在java中使用方法、setter和getter
我有这门课:在java中使用方法、setter和getter,java,instantiation,Java,Instantiation,我有这门课: public class Person { /** * */ private static final long serialVersionUID = 1L; private String firstName = "Vasya"; private String lastName = "Pupkin"; private Integer age = 58; private Integer phone = 2;
public class Person
{
/**
*
*/
private static final long serialVersionUID = 1L;
private String firstName = "Vasya";
private String lastName = "Pupkin";
private Integer age = 58;
private Integer phone = 2;
@Override
public String toString()
{
return "Person [firstName=" + firstName + ", lastName=" + lastName
+ ", age=" + age + "]";
}
public void setName(String name)
{
firstName = name;
}
public void setLastName(String lName)
{
lastName = lName;
}
public void setAge(Integer personAge)
{
age = personAge;
}
public void setPhone(Integer personPhone)
{
phone = personPhone;
}
public String getName()
{
return firstName;
}
public String getLastName()
{
return lastName;
}
public Integer getAge()
{
return age;
}
public Integer getPhone()
{
return phone;
}
public void Init()
{
this.setName("");
this.setLastName("");
this.setPhone(0);
this.setAge(0);
}
}
我创建一个变量:Person-somePerson
,然后从该变量调用方法setName
:
somePerson.setName("");
但是它会引发一个错误。根据提供的代码,以下操作应该有效:
Person somePerson = new Person();
somePerson.setName("");
如果没有,则会发生其他情况。根据提供的代码,以下操作应该有效:
Person somePerson = new Person();
somePerson.setName("");
如果没有,则会发生其他事情。是否初始化
Person
对象?你在做什么人;somePerson.setName(“”)?Re“那么我创建了一个类型为Person
”的变量,你是否真的在任何地方创建了一个新的Person
,或者“变量”是一个默认值为null
的字段?为什么在构造函数中有一个Init
方法而不是初始化状态?Re“这是我的错误”,在哪里?谢谢大家,我忘记使用新构造函数了。你初始化你的Person
对象了吗?你在做什么人;somePerson.setName(“”)?Re“那么我创建了一个类型为Person
”的变量,你是否真的在任何地方创建了一个新的Person
,或者“变量”是一个默认值为null
的字段?为什么在构造函数中有一个Init
方法而不是初始化状态?Re“这是我的错误”,在哪里?谢谢大家,我忘了用新的构造器了。