Java 中被static 修饰的属性,方法和代码块在什么时候加载
2016-12-22 15:36
351 查看
intellij社区版+jdk.7
breakpoint1:SVS2.string = Class not load:com.SVS2;静态池中已经存在StaticVariableLife.age = 124.(No executable code)
breakpoint2:SVS2.string = "";SVS2加载,取到值,并且 自动执行了SVS2中的代码块,静态代码块优先。
package com.static_life; import com.SVS2; /** * Created by Administrator on 2016/12/21. */ public class StaticVariableStart { public static int age = 124; public String name; public String getName() { return name; } public void setName(String name) { this.name = name; } public static void main(String [] args){ SVS2 svs2;//breakpoint svs2= new SVS2();// String s = SVS2.string; StaticVariableStart staticVariableStart = new StaticVariableStart(); System.out.print(SVS2.class.getGenericSuperclass()); } }在主方法中设置多个断点
package com; /** * Created by Administrator on 2016/12/21. */ public class SVS2 { public static String string = ""; { System.out.println("这是代码块"); } static { System.out.println("这是SVS2 的静态代码块"); } }
breakpoint1:SVS2.string = Class not load:com.SVS2;静态池中已经存在StaticVariableLife.age = 124.(No executable code)
breakpoint2:SVS2.string = "";SVS2加载,取到值,并且 自动执行了SVS2中的代码块,静态代码块优先。
相关文章推荐
- Java的static修饰变量,方法,代码块的初始化顺序
- Java中final和static对修饰类、方法、属性的总结
- static 修饰的属性、方法、代码块的使用实例
- 静态代码块、代码块、构造方法、普通方法、static方法、 *静态属性、普通属性的加载顺序、执行顺序
- 第十二讲 static关键字修饰属性和方法、代码块、单例设计模式、对象数组案例
- Java static修饰属性(类变量)、static修饰方法(类方法)
- Java static属性和静态代码块和构造方法等的执行顺序探讨
- java中静态块,静态属性,方法的加载顺序
- Java - Static和Final修饰类属性变量及初始化
- Java Static代码块与构造方法初始化顺序
- 用java中System类的方法显示当前加载的系统属性
- 关于java中子类,父类中,静态代码块: staic{},动态代码块:{},构造方法,类属性,对象属性等执行顺序做个总结:
- Java中的static变量、方法、代码块初始化执行顺序
- Java中的static变量、方法、代码块
- java静态方法、非静态代码块{}、静态代码块static{}
- java 反射调用 私有构造类中 private static final 属性的方法
- java中静态代码块的用法 static用法详解 类的加载顺序
- java中静态代码块的用法 static用法详解 类的加载顺序
- C++转Java自学之路(三)构造代码块、构造函数与static修饰符
- Java中的static变量、方法、代码块