Java對象實(shí)例化的方法有兩種:使用new關(guān)鍵字和使用反射機(jī)制。
ClassName obj = new ClassName();
其中,ClassName是要實(shí)例化的類名,obj是創(chuàng)建的對象名。
Class<?> clazz = Class.forName("ClassName");
Constructor<?> constructor = clazz.getConstructor();
ClassName obj = (ClassName) constructor.newInstance();
其中,ClassName是要實(shí)例化的類名。首先,使用Class.forName()方法獲取類的Class對象,然后通過getConstructor()方法獲取構(gòu)造方法,再通過newInstance()方法調(diào)用構(gòu)造方法創(chuàng)建對象。最后,通過強(qiáng)制類型轉(zhuǎn)換將對象轉(zhuǎn)為目標(biāo)類類型。
需要注意的是,使用反射機(jī)制實(shí)例化對象通常比使用new關(guān)鍵字慢,且較為復(fù)雜,應(yīng)盡量避免過度使用。