Java类加载方式分为显式隐式,显式即我们通常使用Java反射或者ClassLoader来动态加载一个类对象,而隐式指的是类名.方法名()new类实例。显式类加载方式也可以理解为类动态加载,我们可以自定义类加载器去加载任意的类。
    常用的类动态加载方式:

    1. // 反射加载TestHelloWorld示例
    2. Class.forName("com.anbai.sec.classloader.TestHelloWorld");
    3. // ClassLoader加载TestHelloWorld示例
    4. this.getClass().getClassLoader().loadClass("com.anbai.sec.classloader.TestHelloWorld");

    Class.forName("类名")默认会初始化被加载类的静态属性和方法,如果不希望初始化类可以使用Class.forName("类名", 是否初始化类, 类加载器),而ClassLoader.loadClass默认不会初始化类方法。