मान लीजिए आप 3 मूल्यों के साथ एक enum है:क्या यह लागू करने का कोई तरीका है कि आप जावा में एक enum के सभी परिभाषित मानों पर स्विच कर रहे हैं?
enum Colors { RED, GREEN, BLUE }
आप कुछ विधि में इसके बारे में सभी मूल्यों पर स्विच, यह सोच कर आप सभी मामलों संभाला है:
switch (colors) {
case RED: ...
case GREEN: ...
case BLUE: ...
}
फिर बाद में, आप एक जोड़ने enum करने के लिए नए मूल्य:
enum Colors { RED, GREEN, BLUE, YELLOW }
और सब कुछ अभी भी ठीक संकलित है, सिवाय इसके कि आप चुपचाप विधि में YELLOW
के लिए एक मामला नहीं हुआ है। क्या इस तरह के परिदृश्य में संकलन-समय त्रुटि को बढ़ाने का कोई तरीका है?
संपादित करें: समझ में नहीं आता है क्यों इस Can I add and remove elements of enumeration at runtime in Java के शिकार के रूप में चिह्नित किया गया था। चूंकि उत्तर "नहीं" था, इसका मतलब है कि संकलन-समय पर एक enum के सभी मूल्यों को जानना संभव होना चाहिए, और इसलिए मैं जो भी मांग रहा हूं उसे संकलक/कुछ कोड विश्लेषण उपकरण को लागू करने के लिए संभव होना चाहिए, दाएं ?
'डिफ़ॉल्ट: नया असमर्थितऑपरेशन अपवाद(); '? – tkausl
@ कॉलंडर निश्चित रूप से उस प्रश्न का डुप्लिकेट नहीं है। –
@ कोलोन्डर इसे डुप्ली के रूप में चिह्नित करें, सुंदर कृपया? :) –