代码块的理解和使用
package _312after_366before.src.javaTeacher.code_block;
/*
1- 代码块(初始化块){}
2- 代码块的格式(只要1-2两种,一种什么都没有,一种只能加static)---非静态代码块和静态代码块
1- {
XXXXXX
}
2- static{
XXXXXX
}
3- 静态代码块:
1- 内部可以有输出语句
2-随着类的加载而执行(只执行一次)
作用:初始化信息
如果一个类中定义类多个静态代码块,按照声明的先后顺序执行
静态代码块的执行要优先于非静态代码块的执行
静态代码块内只能调用静态的属性、静态的方法,不能调用非静态的结构
4- 非静态代码块:
1- 内部可以有输出语句
2-随着对象的创建而执行(每创建一次,就执行一次)
作用:在创建的时候,可以对对象的属性进行初始化
如果一个类中定义类多个非静态代码块,按照声明的先后顺序执行
对属性可以赋值的位置
1- 默认初始化
2- 显示初始化
3- 构造器初始化
4- 有了对象以后,可以通过"对象.属性"或者"对象.方法",进行赋值
4- 在代码块中赋值
*/
public class BlockTest {
public static void main(String[] args) {
}
}
class Person{
//1- 静态代码块
static {
System.out.println("我是静态代码块");
}
{
System.out.println("我是非静态代码块");
}
}