代码块和成员变量赋值顺序

代码块

作用:
	对Java类或对象进行初始化
静态代码块:
	通常用于初始化静态属性
	1、可以有输出语句
	2、可以对类的属性、类的声明进行初始化操作
	3、不可以对非静态的属性进行初始化
	4、多个静态代码块,由上到下依次执行
	5、静态代码块的执行先于非静态代码块
	6、静态代码块随类的加载而加载,且只执行一次
非静态代码块:
	1、可以有输出语句
	2、可以对类的属性、类的声明进行初始化操作
	3、可以对非静态的属性进行初始化,也可以对静态的变量和方法进行调用
	4、多个非静态代码块,由上到下依次执行
	5、非静态代码块随类的创建而执行,创建一个对象就执行一次,
	优先于构造器

成员变量赋值顺序

代码块和成员变量赋值顺序_第1张图片

你可能感兴趣的:(Java基础,java)