Class類:(注意此處的Class是大寫,不同于關鍵字class),Class 类的实例表示正在运行的 Java 应用程序中的类和接口。
//獲得Class類型對象的第一種方法
Employee e;
...//此處e被實例化
Class c1 = e.getClass();
//獲得Class類型對象的第二種方法,在使用JDBC鏈接數據庫,加載數據庫驅動時經常就按這種方法做
String className = "java.util.Date";
Class c1 = Class.forName(className);
//獲得Class類型對象的第三種方法
Class cl1 = Date.class;
Class cl2 = int.class;
Class cl3 = Double[].class;
二、獲得Class類代表的類的類名
//打印出類的全名(包括內所在的包名)
System.out.println(e.getClass().getName());
Date d = new Date();
Class c1 = d.getClass();
String name = c1.getName();//name is set to "java.util.Date"
三、使用Class類型的對象創建一個實例對象
//使用Class類型的對象調用newInstance()創建一個實例對象,需要說明的是newInstance方法創建實例時調用的是無參構造方法
e.getClass().newInstance();
//下面是結合forName()方法和newInstance()方法創建一個實例對象的例子
String s = "java.util.Date";
Object m = Class.forName(s).newInstance();
以下內容摘抄自java核心技術這本書,作為自己學習總結
一、獲得Class類型對象的三種方法//獲得Class類型對象的第一種方法
Employee e;
...//此處e被實例化
Class c1 = e.getClass();
//獲得Class類型對象的第二種方法,在使用JDBC鏈接數據庫,加載數據庫驅動時經常就按這種方法做
String className = "java.util.Date";
Class c1 = Class.forName(className);
//獲得Class類型對象的第三種方法
Class cl1 = Date.class;
Class cl2 = int.class;
Class cl3 = Double[].class;
二、獲得Class類代表的類的類名
//打印出類的全名(包括內所在的包名)
System.out.println(e.getClass().getName());
Date d = new Date();
Class c1 = d.getClass();
String name = c1.getName();//name is set to "java.util.Date"
三、使用Class類型的對象創建一個實例對象
//使用Class類型的對象調用newInstance()創建一個實例對象,需要說明的是newInstance方法創建實例時調用的是無參構造方法
e.getClass().newInstance();
//下面是結合forName()方法和newInstance()方法創建一個實例對象的例子
String s = "java.util.Date";
Object m = Class.forName(s).newInstance();