當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java Java.lang.Class.getDeclaredClasses()用法及代碼示例



描述

這個java.lang.Class.getDeclaredClasses() 方法返回一個 Class 對象的數組,包括公共、受保護、默認(包)訪問以及該類聲明的私有類和接口,但不包括繼承的類和接口。

如果類沒有聲明任何類或接口作為成員,或者如果此 Class 對象表示基本類型、數組類或 void,則此方法返回長度為 0 的數組。

聲明

以下是聲明java.lang.Class.getDeclaredClasses()方法

public Class<?>[] getDeclaredClasses() throws SecurityException

參數

NA

返回值

此方法返回代表此類的所有聲明成員的 Class 對象數組。

異常

SecurityException- 如果有安全管理器 s 存在。

示例

下麵的例子展示了 java.lang.Class.getDeclaredClasses() 方法的用法。

package com.tutorialspoint;

import java.lang.*;

public class ClassDemo {

   public static void main(String[] args) {
 
      try {
         // returns the Class object associated with this class
         Class cls = Class.forName("ClassDemo");

         /* returns the array of Class objects representing all the declared 
            members of this class */
         Class[] classes = cls.getDeclaredClasses();
         for (int i = 0; i < classes.length; i++) {
            System.out.println("Class = " + classes[i].getName());
         }
      } catch (ClassNotFoundException e) {
         System.out.println(e.toString());
      }
   }

   public class InnerClass1 {
      public InnerClass1() {
         System.out.println("Inner Class1");
      }
   }

   public class InnerClass2 {
      public InnerClass2() {
         System.out.println("Inner Class2");
      }
   }

   private class InnerPrivateClass {
      public InnerPrivateClass() {
         System.out.println("Inner Private Class");
      }
   }
}

讓我們編譯並運行上麵的程序,這將產生以下結果——

Class = ClassDemo$InnerPrivateClass
Class = ClassDemo$InnerClass2
Class = ClassDemo$InnerClass1

相關用法


注:本文由純淨天空篩選整理自 Java.lang.Class.getDeclaredClasses() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。