關於forName 方法

2021-05-23 23:09:00 字數 452 閱讀 4472

這個方法總是返回要載入的類的class類的例項

1、forname(string classname)單引數時, initialize=true

a.總是使用當前類裝載器(也就是裝載執行forname()請求的類的類裝載器)

b.總是初始化這個被裝載的類(當然也包括:裝載、連線、初始化)

2、forname(string classname, boolean initialize, classloader loader)

a.loader指定裝載引數類所用的類裝載器,如果null則用bootstrp裝載器。

b.initialize=true時,肯定連線,而且初始化了;

c.false時,絕對不會初始化,但是可能被連線了,有個例外,如果在呼叫這個forname()前,已經被初始化了,那麼返回的型別也肯定是被初始化的(當然,暗含著: 被同乙個loader所裝載的,而且該類被初始化了)

loadClass和forName的區別

隱式載入 new 顯示載入 loadclass,forname等 讓我們直接幹進原始碼!loadclass public class loadclass string name throws classnotfoundexception protected class loadclass strin...

關於構造方法

很多人對構造方法都存在誤解,這種誤解 於物件的建立語法和一些書對其模糊不清的說明。當然,在大多情況下這個誤解並不會影響您的工作,但是這並不表示您就可以不去了解事實的真相。好了,我們就假設物件是由構造方法來建立的,我們看看下面這段 會告訴我們什麼。abstract class base public ...

關於equals Object obj 方法

預設的equals 方法只有等兩個引用都是引用同乙個物件的時候才是true,一般情況下我要使用這個方法就得覆蓋了那個object類的equals 方法。預設情況下 myclass m new myclass myclass b m system.out.println m.equals b 這時候是...