java.lang.Class.newInstance()方法實例
java.lang.Class.newInstance() 創建此Class對象所表示類的新實例。該類由一種新的表達與空參數列表實例。如果它尚未被初始化的類初始化。
聲明
以下是java.lang.Class.newInstance()方法的聲明
public T newInstance() throws InstantiationException, IllegalAccessException
參數
-
NA
返回值
此方法返回當前對象表示類的一個新分配的實例。
異常
-
IllegalAccessException -- 如果類或它的無參構造函數是無法訪問的。
-
InstantiationException -- 如果這個類表示一個抽象類,接口,數組類,基本類型,或無效;或者如果類冇有無參構造函數;或者如果所述實例化操作由於某些其他原因。
-
ExceptionInInitializerError -- 如果用這種方法引起的初始化失敗。
-
SecurityException -- 如果安全管理存在。
例子
下麵的例子顯示java.lang.Class.newInstance()方法的使用。
package com.yiibai; import java.util.*; import java.lang.*; public class ClassDemo { public static void main(String[] args) { try { // date object Date d = new Date(); Class cls = d.getClass(); System.out.println("Time = " + d.toString()); /* creates a new instance of the class represented by this Class object cls */ Object obj = cls.newInstance(); System.out.println("Time = " + obj); } catch(InstantiationException e) { System.out.println(e.toString()); } catch(IllegalAccessException e) { System.out.println(e.toString()); } } }
讓我們來編譯和運行上麵的程序,這將產生以下結果:
Time = Tue Oct 23 16:09:55 MST 2014 Time = Tue Oct 23 16:09:55 MST 2014