我是这个概念的新手,我需要在以下情况中理解getter和setter方法的使用。
我有三个课程如下。
1)ModelClass.java,其中我有getter和setter方法。
public class ModelClass {
private String name;
private int age;
private String address;
public ModelClass(){
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
2)StaffInformation.java,我通过setter方法设置了特定的员工信息。
public class StaffInformation {
public StaffInformation(){
ModelClass mc = new ModelClass();
mc.setName("Khan");
mc.setAge(30);
mc.setAddress("NY");
}
}
3)Main.java,这里我想通过我在ModelClass.java中的getter方法打印出StaffInformation。 这样的事情。
public class Main {
public static void main(String[] args) {
StaffInformation staff = new StaffInformation();
ModelClass mc = new ModelClass(); //here is problem
System.out.println(mc.getAge());
System.out.println(mc.getName());
System.out.println(mc.getAddress());
}
}
如何下车......谢谢
答案 0 :(得分:2)
您创建多个Model对象的代码问题尝试此代码
public StaffInformation(){
ModelClass mc = new ModelClass();
mc.setName("Khan");
mc.setAge(30);
mc.setAddress("NY");
Main.displayData(mc);
}
这是你的主要课程
class Main{
public static displayData(ModelClass mc)
{
System.out.println(mc.getAge());
System.out.println(mc.getName());
System.out.println(mc.getAddress());
}
public static void main(String[] args) {
StaffInformation sc=new StaffInformation();
}
}
答案 1 :(得分:0)
根据您显示的代码,您设置name
,age
或address
的唯一位置是StaffInformation
的构造函数。但您也永远不会实例化StaffInformation
,因此Model
中的所有字段都会保留为默认值 - 0
,null
和null
。
答案 2 :(得分:0)
StaffInformation正在创建ModelClass但不会使其可见。 将员工信息更改为
public class StaffInformation {
public StaffInformation(){
}
public ModelClass createModel() {
ModelClass mc = new ModelClass();
mc.setName("Khan");
mc.setAge(30);
mc.setAddress("NY");
return mc;
}
}
并更改您的main以使用创建的ModelClass:
class Main{
public static void displayData(ModelClass mc)
{
System.out.println(mc.getAge());
System.out.println(mc.getName());
System.out.println(mc.getAddress());
}
public static void main(String[] args) {
StaffInformation sc= new StaffInformation();
ModelClass mc = sc.createModel();
Main.displayData(mc);
}
}