2015-05-05 4 views
5

द्वारा प्रभावी जावा में समझाया गया है कृपया यह link देखें। Enums के बारे में, श्री बलोच कहते हैंएनाम प्रकार जोशुआ ब्लोच

जावा के enum प्रकार वर्गों है कि एक सार्वजनिक स्थिर अंतिम क्षेत्र के माध्यम से एक गणना स्थायी के लिए एक उदाहरण का निर्यात कर रहे हैं।

मैं Enum कक्षा प्रलेखन पढ़ा लेकिन कोई सार्वजनिक स्थिर अंतिम क्षेत्र वहाँ था, तो कैसे करता है इसके बाद के संस्करण बयान सही पकड़। कृपया समझाएँ। धन्यवाद

+2

कंपाइलर आपके लिए सार्वजनिक स्थैतिक अंतिम क्षेत्र बनाता है। कक्षा के साथ javap के साथ decompiling कोशिश करें। –

उत्तर

13

एक Test.java फ़ाइल बनाएँ और लिखने Test enum: इस वर्ग के

public enum Test { 
    Hello 
} 

संकलन: javac Test.java, और javap Test का उपयोग संकलित वर्ग पाने के लिए:

public final class Test extends java.lang.Enum{ 
    public static final Test Hello; 
    public static Test[] values(); 
    public static Test valueOf(java.lang.String); 
    static {}; 
} 

और आप देख सकते हैं Test वर्ग तक फैली हुई है Enum और इसमें public static final Hello फ़ील्ड है।

3

Enum सभी enums के लिए आधार वर्ग है। इसमें स्थिरांक नहीं है। स्थिरांक में कंक्रीट एनम कक्षाएं क्या होती हैं। उदाहरण के लिए documentation for the enum Locale.Category देखें। इसमें प्रत्येक एनम निरंतर के लिए सार्वजनिक स्थिर अंतिम फ़ील्ड होते हैं: प्रदर्शन और प्रारूप।

संबंधित मुद्दे