Java中的static详解
static的基本使用方法:
/**
* static的基本用法
* @author wangcan
*
*/
public class Test {
static int num = 1;
public static void Print(){
System.out.println("static 函数调用");
}
static{
System.out.println("静态代码块");
}
public static void main(String[] args) {
System.out.println(Test.num);//直接使用类名来访问静态成员变量
Test.Print();//直接使用类名来访问静态成员函数
}
}被static修饰的变量,在类被创建后就会一直存在,其生命周期与其所在的类相同。若一个类有多个实例对象,这些实例对象都会共用该静态成员变量。同时在类不创建实例对象的情况下,可以直接使用类名来访问。静态方法也是一样的。static代码块有助于提高程序的性能,因为它只会在类初次加载的时候进行初始化,且这个过程只会执行一次。从而避免每次创建对象都要进行初始化的static中的操作,降低了开销。
main方法为什么用static修饰
static访问相关
关于static执行顺序的一道题
public class X {
Y y = new Y();
static {
System.out.println("tttt");
}
X() {
System.out.println("X");
}
public static void main(String[] args) {
new Z();
}
}
class Y {
Y() {
System.out.println("Y");
}
}
class Z extends X {
Y y = new Y();
static {
System.out.println("tt");
}
Z() {
System.out.println("Z");
}
}
225



被折叠的 条评论
为什么被折叠?



