Java基础02

静态代码块 VS 实例代码块

静态代码块在类加载时顺序执行,并且只执行一次。

实例代码块在构造方法之前执行。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class CodeOrder{
//静态代码块1
static{
System.out.println("static-01");
}

//程序入口
public static void main(String[] args) {
System.out.println("main begin");
new CodeOrder();
System.out.println("main end");
}

//构造方法
public CodeOrder(){
System.out.println("new CodeOrder();");
}

//实例代码块
{
System.out.println("{....}");
}

//静态代码块2
static{
System.out.println("static-02");
}
}

执行顺序:

static-01
static-02
main begin
{….}
new CodeOrder();
main end

I/O流

字节流 字符流
输入流 InputStream Reader
输出流 OutputStream Writer