Java一个对象的初始化过程

前言:爱生活,爱分享。
原文出处:http://blog.csdn.net/u014158743/article/details/52601494

/*
一个对象的初始化过程:
1:因为创建对象需要字节码文件,所以先加载字节码文件到方法区
2:如果有静态代码块执行静态代码块
3:在堆中开辟内存
4:为成员变量赋默认值
5:为成员变量赋初始值
6:执行构造代码块
7:执行构造函数
8:把对象在堆中的内存地址赋给栈中的变量
*/
class Person
{
    private String name="xiaohong";
    private int age=23;
    private static String country="CN";

    {
        System.out.println(name+"  "+age);
    }

    public Person(String name,int age)
    {
        this.name = name;
        this.age = age;
    }
    public void setName(String name)
    {
       this.name = name;
    }
    public String getName()
    {
        return this.name;
    }
}
class  Demo
{
    public static void main(String[] args) 
    {
        Person p = new Person("小白",20);
        p.setName("小黑");

    }
}

猜你喜欢

转载自blog.csdn.net/u014158743/article/details/52601494
今日推荐