教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Java面試題之Class.forName的作用

更新時間:2017年12月29日11時36分 來源:傳智播客 瀏覽次數(shù):

按參數(shù)中指定的字符串形式的類名去搜索并加載相應(yīng)的類,如果該類字節(jié)碼已經(jīng)被加載過,則返回代表該字節(jié)碼的Class實例對象,否則,按類加載器的委托機(jī)制去搜索和加載該類,如果所有的類加載器都無法加載到該類,則拋出ClassNotFoundException。加載完這個Class字節(jié)碼后,接著就可以使用Class字節(jié)碼的newInstance方法去創(chuàng)建該類的實例對象了。

有時候,我們程序中所有使用的具體類名在設(shè)計時(即開發(fā)時)無法確定,只有程序運(yùn)行時才能確定,這時候就需要使用Class.forName去動態(tài)加載該類,這個類名通常是在配置文件中配置的,例如,spring的ioc中每次依賴注入的具體類就是這樣配置的,jdbc的驅(qū)動類名通常也是通過配置文件來配置的,以便在產(chǎn)品交付使用后不用修改源程序就可以更換驅(qū)動類名。

本文版權(quán)歸傳智播客JavaEE學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客JavaEE培訓(xùn)學(xué)院
0 分享到:
和我們在線交談!