构造方法,静态代码块,成员变量的加载顺序

简介: 构造方法,静态代码块,成员变量的加载顺序

构造方法,静态代码块,成员变量的加载顺序.



静态变量—>静态代码块—>成员变量—>代码块—>构造方法


1.静态代码块:

在类加载时即运行,而且只运行一次,并且优于各种代码块以及构造函数运行,如果一个类中有多个静态代码块,会按照书写顺序依次执行,静态代码块不能访问普通变量(普通变量只能通过对象来调用).


2.构造代码块:

在创建对象时被调用,每次创建对象都会调用一次,但是优于构造函数执行,如果不能实例化对象,构造代码块不会执行,如果存在多个构造代码块,则执行顺序按照代码顺序依次执行(多个构造函数情况下,创建对象时传入的参数不同则初始化对应的构造函数).


3.构造函数:

不能被直接调用,必须通过new运算符在创建对象时才会自动调用,而一般的方法是在程序执行到他的时候被调用的,当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可省略,不过java编译期会提供一个默认的构造函数,此默认构造函数是不带参数的,一般的方法则不具有这一特

目录
相关文章
|
8月前
|
XML Java 数据格式
Java中静态代码块、构造方法、代码块、父类与子类之间执行顺序及父类子类实例化对象
Java中静态代码块、构造方法、代码块、父类与子类之间执行顺序及父类子类实例化对象
81 0
Java中类的初始化过程:(静态成员变量,静态代码块,普通成员变量,代码块初始化顺序)
Java中类的初始化过程:(静态成员变量,静态代码块,普通成员变量,代码块初始化顺序)
112 0
Zp
父类静态代码块、非静态代码块、构造方法、子类静态代码块、子类非静态代码块、子类构造方法执行顺序
父类静态代码块、非静态代码块、构造方法、子类静态代码块、子类非静态代码块、子类构造方法执行顺序
Zp
55 0
|
Java C++
C++类中在构造器中调用本类的另外构造器
C++类中在构造器中调用本类的另外构造器
84 0
|
Android开发
构造函数与初始化块
构造函数与初始化块
129 0
|
架构师 Java Spring
静态代码块、静态变量,构造代码块、实例变量的执行顺序和继承逻辑(下)
静态代码块、静态变量,构造代码块、实例变量的执行顺序和继承逻辑(下)
静态代码块、静态变量,构造代码块、实例变量的执行顺序和继承逻辑(下)
|
Java 编译器 Spring
静态代码块、静态变量,构造代码块、实例变量的执行顺序和继承逻辑(上)
静态代码块、静态变量,构造代码块、实例变量的执行顺序和继承逻辑(上)
|
Python
8.2 类的构造器
class ren():     '''this class is about ren class。类的说明,使用三个单引号'''     def __init__(self,name,sex):        # 构造器         # 注意到 __init__ 方法的...
658 0