延迟加载和动态加载

延迟加载是你在使用的使用加载,而动态加载是在程序运行时才知道类的名字,然后加载类。延迟加载可以应用在动态和非动态的加载上。

动态加载的例子

String className = ... // 例如:java.util.List
List list = (List)Class.forName(className).newInstance();

延迟加载的例子

package com.other.test;

public class Test {
	
	 public static void main(String[] args)
	    {
	        System.out.println("方法调用前!");
	        Test2.doSomething();
	        System.out.println("方法调用后!");
	    }
}

class Test2
{
    static//静态块在类被加载时候运行
    {
        System.out.println("I am now loaded");
    }
 
    public static void doSomething() {}
}

资料

http://blog.csdn.net/dynadotwebb/article/details/17447597


你可能感兴趣的:(延迟加载,动态加载)