Model类中的Getter和Setter方法

时间:2014-05-06 18:35:05

标签: java getter-setter

我是这个概念的新手,我需要在以下情况中理解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());

}

  }

如何下​​车......谢谢

3 个答案:

答案 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)

根据您显示的代码,您设置nameageaddress的唯一位置是StaffInformation的构造函数。但您也永远不会实例化StaffInformation,因此Model中的所有字段都会保留为默认值 - 0nullnull

答案 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);
    }
}