使用构造方法接收引用数据类型

本程序实现了Person类与Message类,两个类的相互引用,

在Person类中需要在构造防法中接收Message类对象,并且将Message类中的Info属性取出为name属性赋值,

同时也提供有 返回新的Message类对象的处理方法,已实现返回信息的拼凑处理

class Message {

    private String info;

    public Message(String tempInfo) {
        info = tempInfo;

    }

    public String getInfo() {
        return info;
    }

    public void setInfo(String info) {
        this.info = info;
    }

}

class Person { // 定义一个类
    private String name; // 成员属性
    private int age; // 成员属性

    public Person(Message msg, int tempAge) { // 定义双参构造方法
        name = msg.getInfo(); // 成员属性初始化
        age = tempAge; // 成员属性初始化
    }

    //Person内部类提供getMessage方法,返回Message对象
    public Message getMessage() { 
        return new Message("姓名" + name + " 、年龄" + age);
    }

    public void tell() {

        System.out.println("姓名" + name + "、年龄" + age);

    }

}

public class ShiYongGouZaoFangFaJieShouYinYongShuJuLeiXing {

    public static void main(String[] args) {

        Person per = new Person(new Message("张三"), 12); // 实例化Person类对象

        per.tell();

        Message msg = per.getMessage(); // 获取Message
        System.out.println(msg.getInfo()); // 获取信息内容
    }

}

 

posted @ 2021-03-09 20:12  别看窗外的世界  阅读(112)  评论(0编辑  收藏  举报