人员类的封装(java程序)

按以下要求编写程序:

  • 定义人员类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());

    }

}

  • 29
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值