权限

权限修饰符

private 本类
默认 本包
protected 本包所有+外包子类
public

一般只用 private public

权限范围之外,实例对象也不能调用

代码块

局部代码块和构造代码块基本不用

局部代码块

1
2
3
4
5
6
public void method() {
{
int a = 10;
sout(a);
}
}

代码块结束后释放资源

构造代码块

每次创建对象时执行一次

1
2
3
4
5
6
7
8
9
class A {
{
// 构造代码块
}

A(){
// code
}
}

执行顺序: 构造代码块 -> 构造方法

静态代码块

类加载时执行(只有一次)

1
2
3
4
5
class A {
static {
// 构造代码块
}
}