Java中new和Class.forName的區別


首先:
New = Class.forName("pacage.A").newInstance();

new是關鍵字,直接創建對象。
Class.forName()是一個方法,要求JVM查找並加載指定的類,類裝載到虛擬機上之后,靜態方法和靜態塊中的處理被執行。
這時候還沒有創建對象。newInstance()是創建對象。

我們最常用的jdbc, 經常會用Class.forName來加載數據庫驅動。

jdbc接口中,會存在各種數據庫的驅動,不在在接口中寫死,一般都寫在配置文件里,
所以需要我們調用的時候通過Class.forName來加載驅動。這時候不需要創建對象,所有沒有調用newInstance()。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM