如何从main设置setter并从另一个类Java7获取getter
我有三节课;1) 主要2)setters和getter 3)另一个类。 在我的主课上,我设置了二传手。我正在寻找从另一个类访问这些值的方法。现在我得到一个空值,这是由于我创建的新实例。那么我如何才能绕过它,如何检索我在main中设置的值
public class Main{
public static void main(String args[]){
GettersAndSetters sg = new GettersAndSetters();
AnotherClass copyOfSG = new AnotherClass();
sg.setName("Mo");
sg.setAge(20);
sg.setIdNum("77777");
System.out.print("Name : " + sg.getName() + " Age : " + sg.getAge()+"\n");
System.out.println(copyOfSG.printout());
//In here I am trying to print the value that is
//in my 3rd class "AnotherClass" but i am getting null.
}
}
输出:
Name : Mo Age : 20
Age: 0
Name: null
settersandgetter:
public class GettersAndSetters{
private String name;
private String idNum;
private int age;
public int getAge(){
return age;
}
public String getName(){
return name;
}
public String getIdNum(){
return idNum;
}
public void setAge( int newAge){
age = newAge;
}
public void setName(String newName){
name = newName;
}
public void setIdNum( String newId){
idNum = newId;
}
}
另一类:
public class AnotherClass {
public void printout() {
GettersAndSetters gs1 = new GettersAndSetters();
System.out.println("Age: " + gs1.getAge());
System.out.println("Name: " + gs1.getName());
System.out.println();
}
}
# 1 楼答案
在
apache library
中有一个类BeanUtil
。这会对你有所帮助。这个cass设置并获取属性值# 2 楼答案
之所以会出现这种情况,是因为您在
Main
和AnotherClass
中创建了两个独立的GettersAndSetters
实例。看:您正在第一个实例中设置属性,但试图从第二个中读取属性。 要解决这个问题,只需按照Satya的建议,将第一个实例从
Main
传递到AnotherClass
中的方法下一种说法是: