1.使用Class靜態方法Class.forName 2.使用ClassLoader 3. 使用類.class方式 4. 使用對象的getClass方法
Class.forName()和ClassLoader.loadClass()區別
Class.forName():將類的.class文件加載到jvm中之外,還會對類進行解釋,執行類中的static塊;
ClassLoader.loadClass():只幹一件事情,就是將.class文件加載到jvm中,不會執行static中的內容,只有在newInstance纔會去執行static塊。
Class.forName(name,initialize,loader)帶參函數也可控制是否加載static塊。並且只有調用了newInstance()方法採用調用構造函數,創建類的對象 。