Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

क्या एनम जावा में किसी भी वर्ग का विस्तार कर सकता है?

जावा में एन्यूमरेशन (एनम) एक डेटाटाइप है जो स्थिर मूल्यों का एक सेट संग्रहीत करता है। आप निश्चित मानों जैसे सप्ताह में दिन, वर्ष में महीने आदि को संग्रहीत करने के लिए गणनाओं का उपयोग कर सकते हैं।

आप एनम कीवर्ड का उपयोग करके एक एन्यूमरेशन को परिभाषित कर सकते हैं, उसके बाद एन्यूमरेशन के नाम के रूप में -

enum Days {
   SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}

सरणियों की तरह, उपरोक्त उदाहरण में 0 से शुरू होने वाली संख्याओं का उपयोग करके गणना में तत्वों/स्थिरांक की पहचान की जाती है, जैसा कि निम्नलिखित उदाहरण में दिखाया गया है, संख्याओं का उपयोग करके दिनों की पहचान की जाती है -

क्या एनम जावा में किसी भी वर्ग का विस्तार कर सकता है?

एन्यूमरेशन कक्षाओं के समान हैं और, आपके भीतर चर, विधियाँ और कंस्ट्रक्टर हो सकते हैं। गणना में केवल ठोस विधियों की अनुमति है।

कक्षा का विस्तार करना

सभी एन्यूमरेशन आंतरिक रूप से एनम नामक एक वर्ग का विस्तार करते हैं जो सभी भाषा एन्यूमरेशन प्रकारों का आधार वर्ग है। चूंकि जावा एकाधिक वंशानुक्रम का समर्थन नहीं करता है, यदि आप ऐसा करने का प्रयास करते हैं तो आप गणना के साथ किसी अन्य वर्ग का विस्तार नहीं कर सकते हैं, एक संकलन समय त्रुटि उत्पन्न होगी।

उदाहरण

निम्नलिखित जावा स्निपेट में हमारे पास नमूना नाम वाला एक वर्ग है और हमने स्कूटर नामक एक एनम प्रकार बनाया है और नमूना वर्ग का विस्तार करने का प्रयास किया है।

import java.util.Scanner;
class Sample {
}
enum Scooters extends Sample {
}

आउटपुट

On executing, this class generates the following compile time error.
D:\>javac EnumExample.java
EnumExample.java:5: error: '{' expected
enum Scooters extends Sample{
              ^
EnumExample.java:5: error: ',', '}', or ';' expected
enum Scooters extends Sample{
                      ^
2 errors

  1. हम जावा में JTextField में पैडिंग कैसे जोड़ सकते हैं?

    A JTextField JTextComponent . का उपवर्ग है वर्ग और यह सबसे महत्वपूर्ण घटकों में से एक है जो उपयोगकर्ता को एकल-पंक्ति प्रारूप में टेक्स्ट मान इनपुट करने की अनुमति देता है . एक JTextField वर्ग एक एक्शन लिस्टनर generate उत्पन्न करेगा इंटरफ़ेस जब हम इसके अंदर कुछ इनपुट दर्ज करने का प्रयास करते हैं। J

  1. जावा में सार वर्ग

    जिस वर्ग की घोषणा में सार कीवर्ड होता है उसे अमूर्त वर्ग के रूप में जाना जाता है। एब्स्ट्रैक्ट क्लासेस में एब्सट्रैक्ट मेथड्स हो भी सकते हैं या नहीं भी हो सकते हैं, यानी बॉडी के बिना मेथड्स ( public void get(); ) लेकिन, यदि किसी वर्ग में कम से कम एक सार विधि है, तो कक्षा को सार घोषित किया जाना चाहि

  1. जावा में अंतिम कक्षा

    किसी वर्ग को अंतिम घोषित करने का मुख्य उद्देश्य वर्ग को उपवर्ग होने से रोकना है। यदि किसी वर्ग को अंतिम के रूप में चिह्नित किया जाता है तो कोई भी वर्ग अंतिम वर्ग से किसी भी विशेषता को प्राप्त नहीं कर सकता है। public final class Test {    // body of class }