java学习之static关键字(下)
static 什么时候用?
1 . 静态变量
- 当分析对象中所具备的成员变量的值是相同的,此成员可以被静态修饰。
- 只要数据在对象中都是不同的,就是对象的特有数据,必须存储在对象中,是非静态的。
2 . 静态函数
- 判断是否用静态修饰,只需要参考该函数是否有访问对象中的特有数据即可。
静态代码块
用法:
public class Demo{
public static void main(String[] args){
new StaticCode().show();
new StaticCode().show();
}
}
class StaticCode{
//随着类的加载而执行,而且只执行一次。
static{
System.out.println("我是静态代码块~");
}
void show(){
System.out.println("我是show方法");
}
}
输出结果:
我是静态代码块~
我是show方法
我是show方法
作用
- 对类进行初始化,当类中变量与方法全部为静态的时,构造函数无法对此类进行初始化,因为此类为静态的,没有对象~
如:
public class Demo{
public static void main(String[] args){
StaticCode.show();
StaticCode.show();
}
}
class StaticCode{
//随着类的加载而执行,而且只执行一次
static{
System.out.println("我是静态代码块~");
}
static void show(){
System.out.println("我是show~");
}
}
输出结果:
静态代码块
我是show~
我是show~