静态代码块(static{})详解
2011-11-01 19:38
246 查看
静态代码块:即在类中的标有static修饰符的代码块,如:
static{ //代码 } 与一般代码块的异同: 相同点:都是在JVM加载类时且在构造方法执行之前执行,在类中都可以定义多个,一般在代码块中对一些static变量进行赋值。 不同点:静态代码块在非静态代码块之前执行。静态代码块只在第一次new执行一次,之后不再执行,而非静态代码块在每new一次就执行一次。非静态代码块可在普通方法中定义;而静态代码块不行。 与静态方法的却别: 静态代码块在第一次初始化的时候被执行,静态方法在类加载的时候被加载,且必须需要主动调用才会执行。 执行顺序相关: 1、单个类的初始化顺序如下:为静态属性分配内存并赋值->执行静态代码块->为非静态属性分配内存并赋值->执行非静态代码块->构造函数。 2、有继承关系的类的初始化顺序如下:父静属->父静块->子静属->子静块->父非静属->父非静块->父构造->子非静属->子非静块->子构造。 static的一些使用注意事项: 1、静态方法只能调用同类中的其他静态成员(静态方法或是静态变量)。 2、静态方法不能使用this和super。因为静态方法不属于任何实例。 3、静态变量属于整个类,在类的方法中不能定义静态方法。 转自http://iamxi.iteye.com/blog/1106613
相关文章推荐
- java基础案例:static(静态)代码块
- java中静态代码块的用法 static用法详解
- static静态代码块与非静态代码块 + 构造函数
- java中static作用详解 static表示“全局”或者“静态”
- java中静态代码块的用法 static用法详解
- 静态代码扫描--Clang Static Analyze
- java中静态代码块的用法 static用法详解(转)
- 【转】java中静态代码块的用法 static用法详解
- java中静态代码块、静态方法、static关键字详解
- java中静态代码块的用法 static用法详解 类的加载顺序
- Java中初始化对象的顺序,静态代码块的用法以及Static的用法详解
- C++ 构造函数与析构函数详解(三)---局部静态存储 局部static
- 从内存的角度观察 堆、栈、全局区(静态区)(static)、文字常量区、程序代码区
- (转)java中静态代码块的用法 static用法详解
- java中静态代码块的用法 static用法详解
- java中静态代码块的用法 static用法详解
- java中静态代码块的用法 static用法详解和static静态导入
- java中静态代码块的用法 static用法详解
- java中静态代码块用法 static用法详解
- Java中静态代码块的用法 static用法详解