当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Enum getDeclaringClass()用法及代码示例


Enum类getDeclaringClass()方法

  • getDeclaringClass() 方法可在java.lang包。
  • getDeclaringClass() 方法用于返回表示此枚举常量的枚举类型的 Class 对象。当且仅当条件:enum1.getDeclaringClass() == enum2.getDeclaringClass() 时,两个枚举常量可以相同。
  • getDeclaringClass() 方法是一个非静态方法,它只能通过类对象访问,如果我们尝试使用类名访问方法,那么我们将得到一个错误。
  • getDeclaringClass() 方法返回 Class 对象时不抛出异常。

用法:

    public final Class getDeclaringClass();

参数:

  • 它不接受任何参数。

返回值:

这个方法的返回类型是Class,它返回一个 "Class" 类型的对象,表示这个枚举常量的枚举类型。

例:

// Java program to demonstrate the example 
// of Class getDeclaringClass() 
//method of Enum 

enum Month {

    JAN,
    FEB,
    MAR,
    APR,
    MAY;
}

enum Weeks {

    SUN,
    MON,
    TUE,
    WED,
    THU;
}

public class GetDeclaringClass {
    public static void main(String args[]) {

        // By using valueOf() method is to get the enum
        // value of the given enum constants
        Month m1 = Month.valueOf("JAN");
        Month m2 = Month.valueOf("FEB");
        Month m3 = Month.valueOf("MAR");
        Month m4 = Month.valueOf("APR");
        Month m5 = Month.valueOf("MAY");

        Weeks w1 = Weeks.valueOf("SUN");
        Weeks w2 = Weeks.valueOf("MON");
        Weeks w3 = Weeks.valueOf("TUE");
        Weeks w4 = Weeks.valueOf("WED");
        Weeks w5 = Weeks.valueOf("THU");

        System.out.println("Display Corresponding class:");

        System.out.println(m1.name() + " " + m1.getDeclaringClass());
        System.out.println(m2.name() + " " + m2.getDeclaringClass());
        System.out.println(m2.name() + " " + m3.getDeclaringClass());
        System.out.println(w1.name() + " " + w1.getDeclaringClass());
        System.out.println(w3.name() + " " + w3.getDeclaringClass());
    }

}

输出

Display Corresponding class:
JAN class Month
FEB class Month
FEB class Month
SUN class Weeks
TUE class Weeks


相关用法


注:本文由纯净天空筛选整理自Preeti Jain大神的英文原创作品 Java Enum getDeclaringClass() method with example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。