Java基础-代码块及其细节

代码块概念:
注意调用时机

好处与使用场景

将构造器的冗余部分提取到代码块 每个构造器执行时都会先执行代码块

静态代码块与普通代码块的区别

注意:创建对象实例时,静态代码块只会被调用一次

例子`

java 复制代码
public Class DD{
	static{
		//打印"DD"
	}
	{
		//打印"new"
	}
}
DD d=new DD();
DD d1=new DD();

结果 DD被打印一次而new被打印两次

创建对象时类的调用顺序

示例

执行顺序 aaa父类(Object )->aaa普通代码块-> aaa构造器-> bbb普通代码块->bbb构造器

继承时的代码块初始化顺序

new的时候两个动作(类加载+初始化)

静态代码块和属性(父>子)->(普通代码块和属性->构造器)(父>子)

示例:

父类静态代码块 静态属性

子类静态代码块 静态属性

父类普通方法普通属性

父类构造方法

子类普通方法普通属性(若有多个按定义顺序执行)

父类普通方法普通属性

相关推荐
KevinGuo4574 分钟前
Selenium3自动化测试实战——基于python语言
开发语言·python·selenium
夏幻灵5 分钟前
写给初次用IDEA的新人
java·ide·intellij-idea
jgyzl18 分钟前
2026.1.2 Tomcat保姆级使用教程
java·tomcat
Tony Bai19 分钟前
Go 考古:Go 官方如何决定支持你的 CPU 和 OS?
开发语言·后端·golang
知无不研30 分钟前
.练习- Java字符串之String类创建字符串之使用equals和==判断字符串是否相等
java·开发语言
IT英语写作研习社34 分钟前
一句话解释Java 8 流streams 和函数式接口、λ表达式的关系
java
Slow菜鸟37 分钟前
Java基础 | JWT登录场景化最优方案(一)
java·开发语言
weixin_4573402143 分钟前
lora监督微调(SFT)
开发语言·python
_200_1 小时前
Lua 运算符
开发语言·junit·lua
UP_Continue1 小时前
C++11--引言折叠与完美转发
开发语言·c++