对象实例化过程
对象实例化过程,就是执行类构造函数对应在字节码文件中的 <init>()
方法(实例构造器), <init>()
方法由非静态变量、非静态代码块以及对应的构造器组成。
<init>()
方法可以重载多个,类有几个构造器就有几个 <init>()
方法;
<init>()
方法中的代码执行顺序为:父类变量初始化、父类代码块、父类构造器、子类变量初始化、子类代码块、子类构造器。
静态变量、静态代码块、普通变量、普通代码块、构造器的执行顺序如下图:
具有父类的子类的实例化顺序如下:
底层实现原理
Java是一门面向对象的编程语言,Java程序运行过程中无时无刻都有对象被创建出来。
在语言层面