我的访问器方法在Java中返回null,但编译时没有错误
这是一个家庭作业,我完全被这个问题难住了我的访问器方法在Java中返回null,但编译时没有错误,java,oop,Java,Oop,这是一个家庭作业,我完全被这个问题难住了 public class Person { String name; int age; public Person(String myName,int myAge) { myName = name; myAge = age; } public int getAge() { return age; } public String getName() { } public void setAge(int newAge) {
public class Person {
String name;
int age;
public Person(String myName,int myAge) {
myName = name;
myAge = age;
}
public int getAge() {
return age;
}
public String getName() {
}
public void setAge(int newAge) {
age = newAge;
}
public void printDetails() {
System.out.println("The name of this person is " + getName());
}
public static void main (String[] args ) {
Person Eliza = new Person("Eliza", 66);
Eliza.printDetails();
}
}
这将返回:
The name of this person is null
希望我错过了一些非常明显的东西,任何评论都值得欣赏。您需要将myName指定给name,将myAge指定给age,而不是反过来,并且在getName()中不返回任何内容
myName=name代码>应该是name=myName代码>。您的方法getName()没有返回任何内容。这至少是今天关于错误方向完成的赋值的第三个此类问题。因为他们在setter中做得很正确,我们可以假设这是一个“输入错误”。请不要养成回答这种问题的习惯。取而代之的是,用你可以在上面看到的接近的理由来标记它们,也许还可以发表评论。我们不想保留这些问题,答案会让删除变得更困难。
public class Person {
String name;
int age;
public Person(String myName,int myAge) {
name = myName;
age = myAge;
}
public int getAge() {
return age;
}
public String getName() {
return name;
}
public void setAge(int newAge) {
age = newAge;
}
public void printDetails() {
System.out.println("The name of this person is " + getName());
}
public static void main (String[] args ) {
Person Eliza = new Person("Eliza", 66);
Eliza.printDetails();
}
}