public class Main {
public static void main(String[] args) {
Person Gunnar = new Person();
Person Sven = new Person();
Dog Doggy = new Dog();
Dog Doggi = new Dog();
Gunnar.setName("Gunnar");
Gunnar.setAge(20);
Gunnar.setHeight(215);
Sven.setName("Sven");
Sven.setAge(55);
Sven.setHeight(178);
Sven.sayHello(Gunnar);
}
}
Java希望我将Sven
和Gunnar
(两个Person对象的名称)更改为.setName
行中的Person,因此它将是Person.setName("Gunnar");
和{{1 }}。但是,这是行不通的,因为没有办法说明哪一个是哪个。如果我错了,请纠正我。也不要介意狗码。
这是Person类的代码:
Person.setName("Sven");
答案 0 :(得分:3)
您正确地调用您的方法(从逻辑的角度来看)
但显然你已经错误地宣布了它们(作为静态)
通过删除静态修饰符使它们成为实例方法
这应该可以解决你的问题。并了解之间的区别
静态和实例方法(似乎你还没有)。
特别是getName
和setName
不应该是静态的。