java学习笔记之——代码块
代码块会在
1、普通代码快
在方法中出现的代码块为普通代码块,例如:
public class CodeBlock{
public void normal() {
{
//普通代码块的执行顺顺序正常
System.out.println("我是普通代码块");
}
}
}
2、构造代码块
在类中定义没有static关键字修饰的{}代码块为构造代码块,例:
public class CodeBlock{
//构造器
public CodeBlock{
System.out.println("构造器");
}
{
System.out.println("构造代码块"); //在实例化对象时,构造代码块会在构造方法前执行
}
public static void main(String[] args) {
CodeBlock cb = new CodeBlock();
}
}
输出结果:
构造代码块
构造器
3、静态代码块
使用static关键字修饰的代码块为静态代码块,静态代码块用来初始化静态属性,例如:
public class StcBlock{
private static String mes;
//静态代码块可用来初始化一些项目最常用的变量或对象。
static {
mes = "静态代码块";
System.out.println(mes);
}
//构造代码块
{
System.out.println("构造代码块");
}
//构造器
public StcBlock() {
System.out.println("构造器");
}
}
运行结果:
静态代码块
构造代码块
构造器
由此可以看出,静态块、构造块和构造器的执行数序是 静态块->构造块->构造器