美文网首页
创建一个对象的过程

创建一个对象的过程

作者: Triste花刺 | 来源:发表于2018-06-01 13:13 被阅读0次

    首先创建一个People实体类

    package com.zhang.java_base.bean;
    /**
     * @program:
     * @description:
     * @author: 寻。
     * @create: 2018-06-01 09:54
     **/
    public class People {
    
        private String name ;
    
        static{
            System.out.println("静态代码块执行。。。");
        }
    
        {
            System.out.println("构造代码块执行");
        }
    
        public People(){
            System.out.println("无参构造器执行");
        }
    
        public static void main(String[] args) {
            People people = new People();
            System.out.println(people);
        }
    
    }
    

    我们这边在main方法中测试下创建对象的过程。

    静态代码块执行。。。
    构造代码块执行
    无参构造器执行
    com.zhang.java_base.bean.People@2f92e0f4
    

    因此得出结论:
    People people = new People();
    这句话都做了什么事情呢?

    1. 因为new用到了People.class,所以会先找到People.class文件并加载到内存中;
    2. 执行该类中的static代码块,如果有的话,给People.class类进行初始化;
    3. 在堆内存中开辟空间,分配内存地址;
    4. 在堆内存中建立对象的特有属性,并进行默认初始化;
    5. 对属性进行显示初始化;
    6. 对对象进行构造代码块初始化;
    7. 对对象进行对应的构造参数初始化;
    8. 将内存地址赋值给栈内存中的people变量;

    相关文章

      网友评论

          本文标题:创建一个对象的过程

          本文链接:https://www.haomeiwen.com/subject/pmohsftx.html