वीडियो: एनम कंस्ट्रक्टर निजी क्यों है?
2024 लेखक: Lynn Donovan | [email protected]. अंतिम बार संशोधित: 2023-12-15 23:47
आपके पास वास्तव में एक सार्वजनिक नहीं हो सकता एनम कंस्ट्रक्टर . आपको इसकी आवश्यकता है निर्माता होने वाला निजी , चूंकि एन्यूम्स मानों के एक सीमित सेट को परिभाषित करें (उदाहरण के लिए EN_US, EN_UK, FR_FR, FR_BE)। अगर निर्माता क्या सार्वजनिक लोग संभावित रूप से अधिक मूल्य बना सकते थे (उदाहरण के लिए अमान्य/अघोषित मान जैसे XX_KK, आदि)।
इसके बारे में, क्या एनम में एक कंस्ट्रक्टर हो सकता है?
यह है क्योंकि एन्यूम जावा में निश्चित स्थिर मान हैं। इसलिए, सार्वजनिक या संरक्षित होने का कोई मतलब नहीं है निर्माता जैसा कि आप का उदाहरण नहीं बना सकते एन्यूम . साथ ही, ध्यान दें कि आंतरिक रूप से एन्यूम नीचे के रूप में कक्षा में परिवर्तित कर दिया गया है। जैसे हम कर सकते हैं नहीं बना एन्यूम वस्तुओं स्पष्ट रूप से इसलिए हम कर सकते हैं 'आह्वान नहीं' एनम कंस्ट्रक्टर सीधे।
साथ ही, एनम कंस्ट्रक्टर और रेगुलर क्लास कंस्ट्रक्टर में क्या अंतर है? प्रश्न का उत्तर देने के लिए: अनिवार्य रूप से, नहीं है के बीच अंतर दो दृष्टिकोण। तथापि, एन्यूम निर्माण आपको कुछ अतिरिक्त सहायक तरीके प्रदान करता है जैसे कि value(), valueOf(), आदि। जिन्हें आपको स्वयं लिखना होगा कक्षा -साथ-निजी- निर्माता पहुंचना।
इसके अलावा, enums का उद्देश्य क्या है?
NS एन्यूम नामित पूर्णांक स्थिरांक की सूची घोषित करने के लिए प्रयोग किया जाता है। इसे का उपयोग करके परिभाषित किया जा सकता है एन्यूम सीधे नामस्थान, वर्ग या संरचना के अंदर कीवर्ड। NS एन्यूम प्रत्येक स्थिरांक को एक नाम देने के लिए प्रयोग किया जाता है ताकि उसके नाम का उपयोग करके निरंतर पूर्णांक को संदर्भित किया जा सके। उदाहरण: एन्यूम.
क्या एनमों को तत्काल किया जा सकता है?
Enums सार्वजनिक निर्माणकर्ताओं का समर्थन नहीं करता है और इसलिए, नहीं हो सकता तत्काल . Enums तब के लिए हैं जब आपके पास संबंधित स्थिरांक का एक निश्चित सेट होता है। बिल्कुल एक उदाहरण मर्जी प्रत्येक के लिए बनाया जाना एन्यूम लगातार।
सिफारिश की:
आप जावा में एक कंस्ट्रक्टर में ArrayList को कैसे इनिशियलाइज़ करते हैं?
यदि आप इसे केवल कंस्ट्रक्टर में घोषित करना चाहते हैं तो आपके पास कोड हो सकता है: ArrayList name = new ArrayList (); अन्यथा आप इसे एक फ़ील्ड के रूप में घोषित कर सकते हैं, और फिर इसे कंस्ट्रक्टर में इनिशियलाइज़ कर सकते हैं
क्या मेरे पास पायथन में कई कंस्ट्रक्टर हो सकते हैं?
Java या C++ के विपरीत, हम Python में कई कंस्ट्रक्टर्स को परिभाषित नहीं कर सकते हैं। लेकिन, हम एक डिफ़ॉल्ट मान को परिभाषित कर सकते हैं यदि कोई पास नहीं होता है या हम तर्क के रूप में *args, **kwargs का उपयोग कर सकते हैं
फ़ील्ड आमतौर पर निजी क्यों होते हैं?
फ़ील्ड को तब तक निजी घोषित किया जाना चाहिए जब तक कि ऐसा न करने का कोई अच्छा कारण न हो। प्रोग्रामिंग में स्थायी मूल्य के मार्गदर्शक सिद्धांतों में से एक है 'रहस्य रखते हुए लहर प्रभाव को कम करें।' जब कोई फ़ील्ड निजी होती है, तो कॉल करने वाले को आमतौर पर फ़ील्ड में अनुपयुक्त सीधी पहुंच नहीं मिल सकती है
आप स्ट्रिंग्स के साथ एनम की तुलना कैसे करते हैं?
स्ट्रिंग से एनम प्रकार की तुलना करने के लिए आपको एनम को स्ट्रिंग में बदलना चाहिए और फिर उनकी तुलना करना चाहिए। उसके लिए आप toString () विधि या नाम () विधि का उपयोग कर सकते हैं। toString () - इस एनम स्थिरांक का नाम लौटाता है, जैसा कि घोषणा में निहित है
क्या हमारे पास एनम के अंदर एनम हो सकता है?
Enum घोषणा कक्षा के बाहर या कक्षा के अंदर की जा सकती है लेकिन किसी विधि के अंदर नहीं। // एक वर्ग के अंदर एनम घोषणा। एनम के अंदर पहली पंक्ति स्थिरांक की सूची होनी चाहिए और फिर अन्य चीजें जैसे विधियां, चर और निर्माता