java-类加载机制
dandfly
这个作者很懒,什么都没留下…
展开
-
Java 字节码--ZT
深入Java编程——Java的字节代码 Java程序员很少注意程序的编译结果。事实上,Java的字节代码向我们提供了非常有价值的信息。特别是在调试排除Java性能问题时,编译结果让我们可以更深入地理解如何提高程序执行的效率等问题。其实JDK使我们研究Java字节代码变得非常容易。本文阐述怎样利用JDK中的工具查看解释Java字节代码,主要包含以下方面的一些内容: l ...2010-04-18 01:06:11 · 82 阅读 · 0 评论 -
java 类加载机制--ZT
转载自:http://www.blogjava.net/zhuxing/archive/2008/08/08/220841.htmlJava类加载原理解析 1 基本信息 摘要:每个java开发人员对java.lang.ClassNotFoundExcetpion这个异常肯定都不陌生,这背后...2010-04-23 20:59:52 · 73 阅读 · 0 评论 -
java 类初始化--ZT
1、类只有在使用New调用创建的时候才会被JAVA类装载器装入2、JAVA类首次装入时,会对静态成员变量或方法进行一次初始化,但方法不被调用是不会执行的,静态成员变量和静态初始化块级别相同,非静态成员变量和非静态初始化块级别相同。先初始化父类的静态代码--->初始化子类的静态代码-->初始化父类的非静态代码--->初始化父类构造函数--->初始化子类非静...2010-04-26 16:08:27 · 79 阅读 · 0 评论 -
类初始化
1. 初始化分为类的初始化和实例的初始化 2. 每个类在 JVM 中都对应一个 Class 实例 3. 父类实例是作为子例的部分存在的 (Class 实例之间也存在父子关系)4. 初始化实例之前要初始化类 基于以上几点就可以理解以下初始化顺序 1. 父类静态属性、静态类 (父类的初始化,对应 JVM 方法 cinit()) 2. 子类的静态属性、静态类 (子类的...原创 2010-05-10 19:43:50 · 91 阅读 · 0 评论 -
java双亲委托模型--ZT
为什么要使用这种双亲委托模式呢?因为这样可以避免重复加载,当父亲已经加载了该类的时候,就没有必要子ClassLoader再加载一次。考虑到安全因素,我们试想一下,如果不使用这种委托模式,那我们就可以随时使用自定义的String来动态替代java核心api中定义类型,这样会存在非常大的安全隐患,而双亲委托的方式,就可以避免这种情况,因为String已经在启动时被加载,所以用户自定义类是无法加载...原创 2010-05-19 21:11:14 · 104 阅读 · 0 评论