Java对象的重构和内存理解

源码

class Demo2_Constructor{
    public static void main(String[] args){
        //创建一个Person对象,
        Person p1 = new Person();
        p1.show();
        Person p2 = new Person("郭靖", 99);
        p2.show();
        
    }
}

class Person{
    //成员变量一般私有,安全
    private String name;
    private int age;

    // 空参构造方法
    public Person(){
        System.out.println("对象Person空参构造初始化中...");
        System.out.println("对象Person空参构造初始化完成");
    }

    // 有参构造方法,如果给了有参构造,必须给无参构造,不然系统不会建立无参构造
    public Person(String name, int age){
        System.out.println("对象Person有参构造初始化中...");
        this.name = name;
        this.age = age;
        System.out.println("对象Person有参构造初始化完成");
    }

    //显示
    public void show(){
        System.out.println(name + " : " + age);
    }


}

输出

H:\Code\Java\learn\07day>java Demo2_Constructor
对象Person空参构造初始化中...
对象Person空参构造初始化完成
null : 0
对象Person有参构造初始化中...
对象Person有参构造初始化完成
郭靖 : 99

1. 加载类到方法区

image.png

2. 加载主类到栈内存

image.png

3. 创建p1对象,调用空参构造,弹出

image.png

4. 创建p2对象,调用有参构造,弹出

image.png

这是我的理解,不足的地方望指出

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容