呼叫建構函式

獲取建構函式物件

你可以從 Class 物件獲取 Constructor 類,如下所示:

Class myClass = ... // get a class object
Constructor[] constructors = myClass.getConstructors();

constructors 變數將為類中宣告的每個公共建構函式提供一個 Constructor 例項。

如果你知道要訪問的建構函式的精確引數型別,則可以過濾特定的建構函式。下一個示例返回給定類的公共建構函式,該建構函式將 Integer 作為引數:

Class myClass = ... // get a class object
Constructor constructor = myClass.getConstructor(new Class[]{Integer.class});

如果沒有建構函式匹配給定的建構函式引數,則丟擲 NoSuchMethodException

使用建構函式物件的新例項

Class myClass = MyObj.class // get a class object
Constructor constructor = myClass.getConstructor(Integer.class);
MyObj myObj = (MyObj) constructor.newInstance(Integer.valueOf(123));