Dog.java:16:错误:不兼容的类型:意外的返回值

时间:2015-10-24 04:39:16

标签: java oop

无法弄清楚......

class Dog {
  int age;
  public Dog(int dogsAge) {
    age = dogsAge;
  }

  public void bark() {
    System.out.println("Woof!");
  }

  public void run(int feet) {
    System.out.println("Your dog ran " + feet + " feet!");
  }

  public void getAge() {
    return age;
  }

  public static void main(String[] args) {
    Dog spike = new Dog(999);
    spike.bark();
    spike.run(999);
  }

}

我认为错误发生在返回年龄部分。

抱歉,如果我不够描述,我是Java的新手。

3 个答案:

答案 0 :(得分:2)

因此,返回类型的变量ageint应该是int而不是void

public int getAge() {
    return age;
}

void表示没有任何值返回给调用方。

答案 1 :(得分:0)

你需要像这样改变你的方法

 public int getAge() {
    return age;
  }

这是age的getter方法。 age在您的程序中的类型为int,因此返回int而不是void,您将会很好。void表示此方法不会返回任何内容。

答案 2 :(得分:0)

如果方法无效,则无法返回值。更改你的getAge方法以返回一个int。

  public int getAge()
  {
    return age;
  }