जावा में स्टेटिक और फाइनल के बीच अंतर

लेखक: Laura McKinney
निर्माण की तारीख: 2 अप्रैल 2021
डेट अपडेट करें: 16 मई 2024
Anonim
जावा में स्थिर और अंतिम के बीच क्या अंतर है?
वीडियो: जावा में स्थिर और अंतिम के बीच क्या अंतर है?

विषय


स्थिर और अंतिम दोनों जावा में उपयोग किए जाने वाले कीवर्ड हैं। क्लास ऑब्जेक्ट बनाने से पहले स्थिर सदस्य तक पहुँचा जा सकता है। वर्ग, विधियों और चर पर लागू होने पर अंतिम प्रभाव अलग होता है। स्थैतिक और अंतिम कीवर्ड के बीच मुख्य अंतर यह है कि स्थिर कीवर्ड का उपयोग उस वर्ग के सदस्य को परिभाषित करने के लिए किया जाता है जिसे उस वर्ग के किसी भी ऑब्जेक्ट के स्वतंत्र रूप से उपयोग किया जा सकता है। अंतिम कीवर्ड का उपयोग घोषित करने के लिए किया जाता है, एक स्थिर चर, एक विधि जिसे ओवरराइड नहीं किया जा सकता है और एक वर्ग जो विरासत में नहीं मिल सकता है।

  1. तुलना चार्ट
  2. परिभाषा
  3. मुख्य अंतर
  4. निष्कर्ष

तुलना चार्ट

तुलना के लिए आधारस्थिरअंतिम
उपयुक्तस्टेटिक कीवर्ड नेस्टेड स्टैटिक क्लास, वेरिएबल्स, मेथड्स और ब्लॉक पर लागू होता है।अंतिम कीवर्ड वर्ग, विधियों और चर पर लागू होता है।
प्रारंभघोषणा के समय स्टेटिक वैरिएबल को इनिशियलाइज़ करना अनिवार्य नहीं है।इसकी घोषणा के समय अंतिम चर को प्रारंभ करना अनिवार्य है।
परिवर्तनस्थैतिक चर को फिर से संगठित किया जा सकता है।अंतिम चर का पुनर्निवेश नहीं किया जा सकता है।
तरीकेस्टेटिक विधियां केवल कक्षा के स्थिर सदस्यों तक ही पहुंच सकती हैं, और केवल अन्य स्थिर विधियों द्वारा ही इसे बुलाया जा सकता है।अंतिम तरीके विरासत में नहीं मिल सकते हैं।
कक्षास्टेटिक क्लास ऑब्जेक्ट नहीं बनाया जा सकता है, और इसमें केवल स्थिर सदस्य होते हैं।एक अंतिम वर्ग किसी भी वर्ग को विरासत में नहीं मिल सकता है।
खंडस्टेटिक ब्लॉक का उपयोग स्टैटिक वैरिएबल को इनिशियलाइज़ करने के लिए किया जाता है।अंतिम कीवर्ड इस तरह के किसी ब्लॉक का समर्थन नहीं करता है।


स्थैतिक की परिभाषा

स्टेटिक एक कीवर्ड है, जो कक्षाओं, चर, विधियों और ब्लॉकों पर लागू होता है। वर्ग के सदस्यों, वर्ग और ब्लॉकों को क्रमशः वर्ग के सदस्यों, वर्ग और ब्लॉक के नाम के सामने "स्थिर" कीवर्ड का उपयोग करके स्थिर बनाया जा सकता है। जब एक वर्ग के सदस्य को स्थिर घोषित किया जाता है, तो वह कक्षा के अन्य सभी सदस्यों के लिए वैश्विक हो जाता है। क्लास के स्थिर सदस्य प्रति उदाहरण के आधार पर मेमोरी पर कब्जा नहीं करता है, अर्थात सभी ऑब्जेक्ट्स स्थिर सदस्य की एक ही प्रति साझा करते हैं। स्थिर सदस्य का उपयोग उस वर्ग की किसी भी वस्तु के स्वतंत्र रूप से किया जा सकता है। ऑब्जेक्ट बनाए जाने से पहले आप क्लास के स्थिर सदस्य तक पहुँच सकते हैं। स्थैतिक सदस्य का सबसे अच्छा उदाहरण मुख्य () विधि है, इसे स्थिर घोषित किया जाता है ताकि किसी भी वस्तु के अस्तित्व में आने से पहले इसे लागू किया जा सके। कक्षा के स्थिर सदस्य तक पहुँचने के लिए सामान्य रूप:

class_name.static_member // कक्षा के स्थिर सदस्य तक पहुँचना

उपरोक्त कोड में class_name उस वर्ग का नाम है जिसमें static_member को परिभाषित किया गया है। स्थैतिक सदस्य एक स्थिर चर या स्थिर विधि हो सकती है


स्थैतिक चर:

  • एक स्थिर चर वर्ग के अन्य सभी डेटा सदस्यों के लिए एक वैश्विक चर की तरह काम करता है।
  • वर्ग के किसी भी ऑब्जेक्ट के मौजूद होने से पहले एक स्थिर चर तक पहुँचा जा सकता है।
  • एक स्थिर चर को उस वर्ग नाम से एक्सेस किया जा सकता है जिसमें इसे डॉट (ऑपरेटर) ऑपरेटर द्वारा परिभाषित किया गया है।

स्थैतिक तरीके:

  • एक स्थैतिक विधि केवल अन्य स्थिर विधियों को ही कॉल कर सकती है।
  • एक स्थिर विधि केवल स्थैतिक डेटा तक पहुंच सकती है।
  • किसी भी स्थिति में एक स्थिर विधि को "यह" या "सुपर" नहीं कहा जा सकता है।
  • एक स्थिर विधि को वर्ग नाम के साथ एक्सेस किया जा सकता है जिसमें इसे डॉट (ऑपरेटर) ऑपरेटर द्वारा परिभाषित किया गया है।

स्थिर वर्ग:

  • जावा में नेस्टेड स्टैटिक क्लास की अवधारणा है। सबसे बाहरी वर्ग को स्थिर नहीं बनाया जा सकता है जबकि अंतरतम वर्ग को स्थिर बनाया जा सकता है।
  • एक स्थिर नेस्टेड वर्ग बाहरी वर्ग के गैर-स्थिर सदस्य तक नहीं पहुंच सकता है।
  • यह केवल बाहरी वर्ग के स्थिर सदस्यों तक ही पहुँच सकता है।

स्थैतिक ब्लॉक:

स्टैटिक ब्लॉक को केवल एक बार निष्पादित किया जाता है जब कक्षा लोड होती है। कक्षा के स्थिर चर को आरंभ करने के लिए उपयोग किया जाता है।

सी ++:

C ++ में हमारे पास स्टेटिक वैरिएबल के साथ-साथ स्टैटिक फंक्शन्स का कॉन्सेप्ट है, जबकि C ++ स्टैटिक क्लास को सपोर्ट नहीं करता है।

सी#:

C # स्टैटिक क्लास, स्टैटिक वैरिएबल और स्टैटिक क्लास को भी सपोर्ट करता है।

जावा:

जावा स्टैटिक नेस्टेड क्लास, स्टेटिक वैरिएबल, स्टैटिक मेथड को सपोर्ट करता है।

फाइनल की परिभाषा

फाइनल एक कीवर्ड है जो कक्षा, चर और विधियों पर लागू होता है। उनके नाम से पहले "अंतिम" कीवर्ड का उपयोग करके वर्ग, चर और विधि को अंतिम घोषित किया गया है। एक बार एक चर को अंतिम घोषित कर दिया जाता है; इसे कार्यक्रम में और संशोधित नहीं किया जा सकता है। अंतिम चर को समय पर घोषित किया जाना चाहिए। अंतिम चर प्रति-आवृत्ति के आधार पर मेमोरी पर कब्जा नहीं करते हैं। कक्षाओं की सभी वस्तुएं अंतिम चर की समान प्रतिलिपि साझा करती हैं।

अंतिम के रूप में घोषित विधि को उस वर्ग के उपवर्ग द्वारा ओवरराइड नहीं किया जा सकता है जिसमें अंतिम विधि घोषित की गई है। जब एक वर्ग को अंतिम घोषित किया जाता है तो अन्य वर्ग उस अंतिम वर्ग को प्राप्त नहीं कर सकता है। C +, C # यदि अंतिम कीवर्ड नहीं है तो अवधारणा का समर्थन न करें। जावा अंतिम कीवर्ड की अवधारणा का समर्थन करता है और जावा में; वर्ग, चर और विधि को अंतिम घोषित किया जा सकता है।

  1. स्थैतिक कीवर्ड एक नेस्टेड स्थिर वर्ग, चर, विधियों और ब्लॉकों पर लागू होता है। दूसरी ओर, अंतिम कीवर्ड वर्ग विधियों और चर पर लागू होता है।
  2. स्टेटिक वैरिएबल को किसी भी समय इनिशियलाइज़ किया जा सकता है, जबकि डिक्लेरेशन के समय एक अंतिम वेरिएबल इनिशियलाइज़ होना चाहिए।
  3. एक स्थिर चर का पुनर्निमाण किया जा सकता है, जबकि एक बार आरंभिक चर के बाद कभी भी पुनर्निमाण नहीं किया जा सकता है।
  4. एक स्थिर विधि कक्षा के स्थिर सदस्य तक पहुंच सकती है और केवल अन्य स्थिर विधियों द्वारा ही इसे लागू किया जा सकता है। दूसरी ओर, अंतिम विधि कभी भी किसी भी वर्ग को विरासत में नहीं मिल सकती है।
  5. स्टेटिक ब्लॉक का उपयोग स्टैटिक वैरिएबल को इनिशियलाइज़ करने के लिए किया जाता है, जबकि फाइनल कीवर्ड किसी भी ब्लॉक को सपोर्ट नहीं करता है।

निष्कर्ष:

स्थिर और अंतिम कीवर्ड दोनों वर्ग, चर और विधि पर लागू होने पर भिन्न उद्देश्य को हल करते हैं।