JVM加载机制与类初始化顺序
文章平均质量分 79
qimiguang
这个作者很懒,什么都没留下…
展开
-
java中Class.forName()的分析
Class.forName(xxx.xx.xx) 返回的是一个类首先你要明白在java里面任何class都要装载在虚拟机上才能运行。这句话就是装载类用的(和new 不一样,要分清楚)。 至于什么时候用,你可以考虑一下这个问题,给你一个字符串变量,它代表一个类的包名和类名,你怎么实例化它?只有你提到的这个方法了,不过要再加一点。 A a = (A)Class.forName("pac转载 2013-10-17 15:08:29 · 534 阅读 · 0 评论 -
java初始化顺序分析
对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序以此是(静态变量、静态初始化块)>(变量、初始化块)>构造器。package com.jiuqi.dna.bap.log.common;public class TestInit { // 静态变量 public static String staticField = "静态变量"; // 变量 public转载 2013-10-17 17:50:54 · 442 阅读 · 0 评论 -
Java 面试题问与答:编译时与运行时(加精+强推)
(转自:http://www.importnew.com/1796.html)在开发和设计的时候,我们需要考虑编译时,运行时以及构建时这三个概念。理解这几个概念可以更好地帮助你去了解一些基本的原理。下面是初学者晋级中级水平需要知道的一些问题。Q.下面的代码片段中,行A和行B所标识的代码有什么区别呢?public class ConstantFolding {转载 2013-10-19 23:44:07 · 587 阅读 · 0 评论 -
深入Java虚拟机JVM类加载初始化学习笔记
1. Classloader的作用,概括来说就是将编译后的class装载、加载到机器内存中,为了以后的程序的执行提供前提条件。2. 一段程序引发的思考:风中叶老师在他的视频中给了我们一段程序,号称是世界上所有的Java程序员都会犯的错误。诡异代码如下:class Singleton { public static Singleton singleto转载 2013-10-18 14:55:17 · 501 阅读 · 0 评论 -
关于Test.class和new Test().getClass()的区别
package com.qimiguang.common;import java.lang.reflect.Method;import java.math.BigDecimal;import java.util.HashSet;import java.util.Iterator;import java.util.Set;public class TestClass { publ原创 2013-10-18 11:18:47 · 497 阅读 · 0 评论