獲取 Java 中類的非限定名稱
Java 中的限定類名包含類的源包。與此相反,非限定類名僅包含類名,不含任何包資訊 。
獲取類非限定名稱的程式如下
示例
public class Demo { public static void main(String[] argv) throws Exception { Class c = java.util.ArrayList.class; String className = c.getName(); System.out.println("The qualified class name is: " + className); if (className.lastIndexOf('.') < 0) { className = className.substring(className.lastIndexOf('.') + 1); className = className.replace('$', '.'); } System.out.println("The unqualified class name is: " + className); } }
輸出
The qualified class name is: java.util.ArrayList The unqualified class name is: ArrayList
現在讓我們瞭解一下上面的程式。
首先使用 getName() 方法顯示限定類名。演示這一過程的程式碼片段如下:−
Class c = java.util.ArrayList.class; String className = c.getName(); System.out.println("The qualified class name is: " + className);
使用 substring() 方法獲取非限定類名,該方法提供來自“.”最後一個索引的 className 的子字串。然後顯示非限定類名。演示這一過程的程式碼片段如下:−
if (className.lastIndexOf('.') < 0) { className = className.substring(className.lastIndexOf('.') + 1); className = className.replace('$', '.'); } System.out.println("The unqualified class name is: " + className);
廣告