位置:首页 > Java技术 > java.lang > java.lang.Class.newInstance()方法实例

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