java中代码块的详细讲解

本文深入解析Java中的四种代码块:普通代码块、构造块、静态代码块和同步代码块。详细阐述了每种代码块的特点、作用及应用场景,帮助读者理解代码块在Java程序中的重要作用。

代码块的定义:

直接被{ }花括号封装的代码称为代码块
代码块可以分为四种:
1.普通代码块–定义在方法中的代码块
普通代码块确定了该代码块中变量的作用域,出了代码块代码变量失效。也就是说代码是定义在栈上的,所以Java中规定普通代码块中不能定义静态变量(编译错误),方法中就不允许定义静态变量,代码块中就更不可以了啊。

class Test{
	public void fun(){
	{
		int a;
	}
	}
}

2.构造快 --定义在类中不加任何修饰符的代码块
构造快在对象产生时被调用,调用顺序优先于构造方法执行,有几个对象,该构造块被调用几次。
用于在构造方法执行前完成一些属性的初始化操作。

class A{
	int a;
	A(){
		a=1;
	}
	{
	a =0;
	}
}

3.静态代码块
静态代码块分为非主类静态代码块和主类中的静态代码块
1>非主类静态代码块
在类加载时执行(啥时候被使用),优先于构造块,无论有多少对象,只会被调用一次
2>主类中的静态代码块
主类中的静态代码块,优先于主方法执行,其他的和非主类相同

public class A{
	int a ;
	static{
	a =1;
	}
	public static void main(String[] args){
	System.out.print(a);
	}
}

4.同步代码块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值