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

Java में एक्सेस मोडिफायर्स और नॉन-एक्सेस मोडिफायर्स में क्या अंतर है?


एक्सेस मोडिफायर्स

एक्सेस मोडिफायर्स वे कीवर्ड्स हैं जिनका उपयोग क्लासेस, वेरिएबल्स, मेथड्स, और कंस्ट्रक्टर्स के साथ उनके एक्सेस लेवल को नियंत्रित करने के लिए किया जाता है।

Java में चार एक्सेस मोडिफायर्स हैं।

  • Default

    जब कोई एक्सेस मोडिफायर निर्दिष्ट नहीं किया जाता, तो जावा इसे डिफ़ॉल्ट मोडिफायर मानता है। डिफ़ॉल्ट मोडिफायर का स्कोप पैकेज के भीतर सीमित होता है।
  • Public

    पब्लिक मोडिफायर का स्कोप हर जगह एक्सेस करना है और पैकेज के बाहर भी।
  • Private

    प्राइवेट मोडिफायर का स्कोप क्लास के भीतर ही एक्सेस करना है।
  • Protected

    प्रोटेक्टेड मोडिफायर का स्कोप पैकेज के भीतर और सभी सबक्लासेस तक सीमित होता है।

नॉन-एक्सेस मोडिफायर्स

नॉन-एक्सेस मोडिफायर्स वे कीवर्ड्स हैं जिनका एक्सेस लेवल से कोई संबंध नहीं है लेकिन वे निर्दिष्ट होने पर विशेष कार्यक्षमता प्रदान करते हैं।

  • Final

    Final कीवर्ड का उपयोग वेरिएबल, मेथड या क्लास के साथ किया जा सकता है। यह इसकी सामग्री को संशोधित होने से रोकता है। क्लास के साथ घोषित होने पर, यह क्लास को एक्सटेंड होने से रोकता है।
  • Static

    Static मोडिफायर का उपयोग क्लास वेरिएबल्स और मेथड्स के साथ किया जाता है जिन्हें क्लास के इंस्टेंस के बिना एक्सेस किया जा सकता है। Static वेरिएबल्स का केवल सिंगल स्टोरेज होता है। सभी ऑब्जेक्ट्स static वेरिएबल के सिंगल स्टोरेज को शेयर करते हैं। उन्हें किसी ऑब्जेक्ट के बिना सीधे एक्सेस किया जा सकता है। Static मेथड्स भी डिक्लेयर किए जा सकते हैं। main() मेथड लोकप्रिय static मेथड है। Static ब्लॉक्स भी डिक्लेयर किए जा सकते हैं और main() मेथड से पहले निष्पादित होते हैं।
  • Abstract

    Abstract का उपयोग क्लास और मेथड्स के साथ किया जा सकता है। एक एब्सट्रैक्ट क्लास को कभी इंस्टेंशिएट नहीं किया जा सकता और इसका उद्देश्य केवल एक्सटेंड होना है। एब्सट्रैक्ट मेथड्स बिना बॉडी के घोषित किए जाते हैं और सेमीकॉलन से समाप्त होते हैं। यदि एक क्लास में एब्सट्रैक्ट मेथड है, तो उसे भी एब्सट्रैक्ट के रूप में निर्दिष्ट किया जाना चाहिए। एक क्लास जो एब्सट्रैक्ट क्लास को एक्सटेंड करती है, उसके सभी एब्सट्रैक्ट मेथड्स को इम्प्लीमेंट करना चाहिए।
  • Synchronized

    यह इंगित करता है कि मेथड को एक समय में केवल एक थ्रेड द्वारा एक्सेस किया जा सकता है।
  • Transient

    एक इंस्टेंस वेरिएबल को transient के रूप में मार्क किया जाता है ताकि JVM को उस विशेष वेरिएबल को स्किप करने के लिए कहा जा सके जब उसे शामिल करने वाले ऑब्जेक्ट को सीरियलाइज़ किया जा रहा हो।
  • Volatile

    Volatile कीवर्ड का उपयोग Java वेरिएबल को "मेन मेमोरी में स्टोर्ड होने" के रूप में मार्क करने के लिए किया जाता है। इसका अर्थ है कि volatile वेरिएबल का हर रीड कंप्यूटर के मेन मेमोरी से पढ़ा जाएगा न कि CPU कैश से और volatile वेरिएबल के लिए राइट्स मेन मेमोरी में लिखे जाएंगे न कि केवल CPU कैश में।
  • Strictfp

    Java में Strictfp कीवर्ड सुनिश्चित करता है कि यदि आप फ्लोटिंग-पॉइंट वेरिएबल में ऑपरेशन्स करते हैं तो आपको हर प्लेटफॉर्म पर समान परिणाम मिलेगा।

  1. Java में JTextField और JTextArea में क्या अंतर है? Java में JTextField और JTextArea में क्या अंतर है?

    Java में JTextField और JTextArea के बीच मुख्य अंतर यह है कि एक JTextField GUI एप्लिकेशन में टेक्स्ट की सिंगल लाइन एंटर करने की अनुमति देता है जबकि JTextArea GUI एप्लिकेशन में टेक्स्ट की मल्टीपल लाइन्स एंटर करने की अनुमति देता है। JTextField एक JTextField सबसे महत्वपूर्ण कंपोनेंट्स में से एक है जो

  1. Java में JFrame और JDialog में क्या अंतर है? Java में JFrame और JDialog में क्या अंतर है?

    JFrame फ्रेम में जोड़े गए कंपोनेंट्स को इसकी सामग्री कहा जाता है, इन्हें contentPane द्वारा प्रबंधित किया जाता है। JFrame में कंपोनेंट जोड़ने के लिए, हमें इसके contentPane का उपयोग करना चाहिए। एक JFrame में टाइटल, बॉर्डर, (वैकल्पिक) मेनू बार और यूज़र-स्पेसिफाइड कंपोनेंट्स के साथ एक विंडो होती है। ए

  1. Java में GridLayout और GridBagLayout में क्या अंतर है? Java में GridLayout और GridBagLayout में क्या अंतर है?

    एक GridLayout सभी कंपोनेंट्स को एक आयताकार ग्रिड में रखता है और इसे समान आकार के आयतों में विभाजित करता है और प्रत्येक कंपोनेंट को एक आयत के अंदर रखा जाता है जबकि GridBagLayout एक लचीला लेआउट मैनेजर है जो कंपोनेंट्स को वर्टिकली और हॉरिजॉन्टली संरेखित करता है बिना यह आवश्यकता के कि कंपोनेंट्स समान आक