按以下要求编写程序:
- 定义人员类Penson,在其中定义私有的成员变量String name(姓名),String sex(性别),age(年龄),address(户籍所在地)等。
- 定义一个不含参的构造方法以及一个以各个成员变量为形参的含参构造方法。
- 给每个成员变量添加setter()与getter()方法,用于给各个成员变量赋值和取值。
- 定义成员方法showInfo(),重写Object类的toString()方法,用于输出人员信息或返回人员信息。
在主方法main()中创建Person类对象zhangsan,lisi,并测试setter()、getter()、showInfo()、toString()方法
public class Person {
private String name;
private String sex;
private int age;
private String address;
public Person() {
}
public Person(String name, String sex, int age, String address) {
this.name = name;
this.sex = sex;
this.age = age;
this.address = address;
}
// 添加 setter() 和 getter() 方法
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getSex() {
return sex;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
public void setAddress(String address) {
this.address = address;
}
public String getAddress() {
return address;
}
// 添加 showInfo() 方法
public void showInfo() {
System.out.println("Name: " + name);
System.out.println("Sex: " + sex);
System.out.println("Age: " + age);
System.out.println("Address: " + address);
}
// 重写 toString() 方法
@Override
public String toString() {
return "Name: " + name + "\nSex: " + sex + "\nAge: " + age + "\nAddress: " + address;
}
}
public class Main {
public static void main(String[] args) {
Person zhangsan = new Person("张三", "男", 25, "北京");
Person lisi = new Person();
// 使用 setter() 方法设置成员变量的值
lisi.setName("李四");
lisi.setSex("女");
lisi.setAge(30);
lisi.setAddress("上海");
// 使用 getter() 方法获取成员变量的值
System.out.println("Name: " + zhangsan.getName());
System.out.println("Sex: " + zhangsan.getSex());
System.out.println("Age: " + zhangsan.getAge());
System.out.println("Address: " + zhangsan.getAddress());
// 调用 showInfo() 方法显示人员信息
zhangsan.showInfo();
lisi.showInfo();
// 调用 toString() 方法返回人员信息
System.out.println(zhangsan.toString());
System.out.println(lisi.toString());
}
}