如何制作符合以下要求的课程?

时间:2013-07-20 22:23:55

标签: java

每次尝试时,都会给我一个'非法的类型开头'和'标识符预期'错误。

班级需要: name:字符名称 level:当前字符级别(默认为1) XP:当前的XP字符(默认为0) maxHP:字符的最大总HP(默认为20) HP:当前的HP角色(默认为maxHP) 黄金:当前黄金量(默认为100) 药水:当前的药水数量(默认为0)

这是我不知道该怎么做的地方。它还需要一个构造函数用于字符名称,以及一个布尔值isDead();检查HP是否高于0。 idk如何添加。

到目前为止,这是我自己的微弱尝试:

public class Character {
    System.out.println("Enter your new character's name.");
    System.out.println("\t");
    String name = input.nextLine();
    level = 1;
    XP = 0;
    maxHP = 20;
    HP = maxHP;
    gold = 100;
    potions = 0;
}

4 个答案:

答案 0 :(得分:1)

我真的建议你阅读一些documentation and tutorials这些基本的东西,如果不理解这一点,你就不会走得太远。

  • 首先:要运行程序,您需要public static void main(String[] args) Method(在此处进行计算)
  • 了解如何declare variables
  • 构造函数是类的一个方法,用于构造此类的新对象,它与calss具有相同的名称:
public Charachter(String name){ //pass the name while creating an object
    this.name=name;
}

让它公开是最有意义的

  • 你的布尔方法是:
public boolean isDead(){
    if(this.HP>0) return true;
    else return false;
}

通常方法具有以下结构:

  1. 能见度定义

  2. 定义此方法返回的内容(如果没有,则为空,也称为过程)

  3. 方法名称

  4. 括号中的
  5. :您传递的可能参数,将用于方法中的计算(不是您的情况)

答案 1 :(得分:0)

您必须定义类及其字段以及方法。这是一个让你入门的样本。

public class Character {
    private String name;
    private int level = 1;
    private int xp = 0;
    private int maxHp = 20;
    private int curHp = maxHp;
    private int gold = 100;
    private int potions = 0;

    /**
     * Constructor
     * @param name
     */
    public Character(String name){
        this.name = name;       
    }

    public boolean isDead(){
        return this.curHp == 0;
    }
}

答案 2 :(得分:0)

如果你想要一个可以创建多个(一个类是什么)的角色 -

public class Character {

    private int level, gold, potions;
    private double xp, maxHP, hp;               // maybe could be ints, not sure

    public Character(String newName) {
        name = newName;
        level = 1;
        xp = 0;
        maxHP = 20;
        hp = maxHP;
        gold = 100;
        potions = 0;            
    }
}

通常,您希望将IO与类创建隔离开来。

现在,您可以在new Character("Robert")函数或任何您想要的上下文中使用main创建一个新字符。您必须以相同的方式从用户那里获取名称。

答案 3 :(得分:-1)

您必须使用main方法才能输入代码。就像这样:

public class Character
    public static void main(String[] args) {
        System.out.println("Enter your new character's name.");
        System.out.println("\t");
        new Character(input.nextLine());
    }

    public Character(String name) {
        this.name = name;
    }

    String name;
    int level = 1;
    int XP = 0;
    int maxHP = 20;
    int HP = maxHP;
    int gold = 100;
    int potions = 0;
}

评论提出了许多其他改进,也在这里。