重温java知识(六、构造方法和匿名对象一起使用的案例)

使用构造方法和匿名对象接受引用数据类型的例子:

package com.mydemo;

// 创建一个“PersonDemo”类
public class PersonDemo {
    public static void main(String args[]) {
        Person per = new Person(new Message("张三"), 18);    // 声明并实例化对象
        per.tell();                                         // 进行方法的调用
        Message msg = per.getMessage();                     // 获取Message对象
        System.out.println(msg.getInfo());                  // 获取信息内容
    }
}

// 定义一个“人”类
class Person {
    private String name;    // 【成员属性】人的姓名
    private int age;        // 【成员属性】人的年龄

    // 【构造方法重载】定义双参构造方法
    public Person(Message msg, int temAge) {
        name = msg.getInfo();       // name属性初始化
        age = temAge;               // age属性初始化
    }

    // 返回Message对象
    public Message getMessage() {
        // 返回匿名对象
        return new Message("Message类里的---姓名:" + name + "、年龄:" + age);
    }

    /**
     * 定义一个信息获取的操作方法,此方法可以输出属性内容
     */
    public void tell() {
        System.out.println("Person类里的---姓名:" + name + "、年龄:" + age);
    }

    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;
    }

}

//定义一个“信息”类
class Message {

    private String info;

    // 【构造方法重载】定义单参构造方法
    public Message(String temInfo) {
        info = temInfo;
    }

    public String getInfo() {
        return info;
    }

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

}
运行结果:
Person类里的---姓名:张三、年龄:18
Message类里的---姓名:张三、年龄:18
发布了123 篇原创文章 · 获赞 4 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/yuzhiboyouzhu/article/details/105565323
今日推荐