加载类并不会运行静态代码块,只有当初始化的时候才会。只有第一次使用数据的时候Java才会进行初始化,而静态代码快是初始化的一部分.
至于Class.forName()请参考API:
public static Class<?> forName(String className)
throws ClassNotFoundException
返回与带有给定字符串名的类或接口相关联的 Class 对象。调用此方法等效于:
Class.forName(className, true, currentLoader)
其中第二个参数表示要是否要在加载后立即初始化。 |