【Java笔记】类中代码块结构的使用

目录

代码块的作用

非静态代码块

静态代码块

代码举例


代码块的作用

1. 用来初始化类、对象

2. 代码块如果有修饰的话,只能使用 static

非静态代码块

1. 内部可以有输出的语句

2. 随着对象的创建而执行

3. 每创建一个对象,就执行一次非静态代码块

4. 作用:可以在创建对象时,对对象的属性等进行初始化

5. 如果一个类中定义了多个非静态代码块,则按照声明的先后顺序执行

6. 非静态代码块内可以调用静态的属性、方法或非静态的属性、方法

静态代码块

1. 内部可以有输出语句

2. 随着类的加载而执行,而且只执行一次

3. 作用:初始化类的信息

4. 如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行

5. 静态代码块的执行要优先于非静态代码块的执行(生命周期)

6. 静态代码块内只能调用静态的属性、方法,不能调用非静态的结构

代码举例

public class SingletonTest {
	public static void main(String[] args) {
		String t = Order.test;
//		Order o = new Order();
	}
}
class Order{
	String name;
	int age;
	static String test;
	// 构造器
	public Order() {
		
	}
	public Order(String name,int age) {
		this.name = name;
		this.age = age;
	}
	// static代码块
	static {
		System.out.println("static block");
		test = "测试模块";
	}
	// 非static代码块
	{
		System.out.println("block");
	}
	// 方法
	public void eat() {
		System.out.println("eat()");
	}
}

>>> static block
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java小白。。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值