Java

Java对象的重构和内存理解

2018-05-29  本文已影响0人  疯帮主

源码

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

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

上一篇下一篇

猜你喜欢

热点阅读