जावा Enums
Enums
एक enum
एक विशेष "वर्ग" है जो
स्थिरांक के समूह का प्रतिनिधित्व करता है (अपरिवर्तनीय चर, जैसे final
चर)।
एक बनाने enum
के लिए, enum
कीवर्ड (कक्षा या इंटरफ़ेस के बजाय) का उपयोग करें, और स्थिरांक को अल्पविराम से अलग करें। ध्यान दें कि वे बड़े अक्षरों में होने चाहिए:
उदाहरण
enum Level {
LOW,
MEDIUM,
HIGH
}
आप डॉट सिंटैक्स enum
के साथ स्थिरांक तक पहुंच सकते हैं:
Level myVar = Level.MEDIUM;
Enum "गणना" के लिए छोटा है, जिसका अर्थ है "विशेष रूप से सूचीबद्ध"।
एक कक्षा के अंदर Enum
enum
आपके पास कक्षा के अंदर भी हो सकता है :
उदाहरण
public class Main {
enum Level {
LOW,
MEDIUM,
HIGH
}
public static void main(String[] args) {
Level myVar = Level.MEDIUM;
System.out.println(myVar);
}
}
आउटपुट होगा:
MEDIUM
स्विच स्टेटमेंट में एनम
Enums का उपयोग अक्सर switch
बयानों में संबंधित मानों की जांच के लिए किया जाता है:
उदाहरण
enum Level {
LOW,
MEDIUM,
HIGH
}
public class Main {
public static void main(String[] args) {
Level myVar = Level.MEDIUM;
switch(myVar) {
case LOW:
System.out.println("Low level");
break;
case MEDIUM:
System.out.println("Medium level");
break;
case HIGH:
System.out.println("High level");
break;
}
}
}
आउटपुट होगा:
Medium level
एक Enum . के माध्यम से लूप
एनम प्रकार में एक values()
विधि है, जो सभी एनम स्थिरांक की एक सरणी देता है। यह विधि तब उपयोगी होती है जब आप किसी एनम के स्थिरांक के माध्यम से लूप करना चाहते हैं:
उदाहरण
for (Level myVar : Level.values()) {
System.out.println(myVar);
}
आउटपुट होगा:
LOW
MEDIUM
HIGH
Enums और Classes के बीच अंतर
एक enum
कैन, जैसे a class
, में विशेषताएँ और विधियाँ होती हैं। अंतर केवल इतना है कि एनम स्थिरांक हैं public
, static
और final
(अपरिवर्तनीय - ओवरराइड नहीं किया जा सकता)।
enum
वस्तुओं को बनाने के लिए उपयोग नहीं किया जा सकता है, और यह अन्य वर्गों का विस्तार नहीं कर सकता है (लेकिन यह इंटरफेस को लागू कर सकता है) ।
Enums का उपयोग क्यों और कब करें?
एनम का उपयोग करें जब आपके पास ऐसे मूल्य हों जिन्हें आप जानते हैं कि वे बदलने वाले नहीं हैं, जैसे महीने के दिन, दिन, रंग, कार्ड के डेक आदि।