Follow Us
माध्यम चुनें / Select Medium:
Eng (English) Hindi (हिन्दी)
ICSE • कक्षा X • Information Technology • अध्याय 6
अनुमानित समय: 45 Mins
प्रगति: अध्ययनरत

कैप्सूलीकरण (Encapsulation)

जावा में एनकैप्सुलेशन और डेटा छिपाने पर विस्तृत मास्टरक्लास। एक्सेस विनिर्देशक (निजी, डिफ़ॉल्ट, संरक्षित, सार्वजनिक), एक्सेस संशोधक दृश्यता मैट्रिक्स, सत्यापन तर्क के साथ गेटर्स और सेटर्स, पैकेज संगठन, अमूर्त और एनकैप्सुलेशन के बीच अंतर, और सुरक्षित सॉफ्टवेयर आर्किटेक्चर को कवर करता है।

यह अध्याय क्यों महत्वपूर्ण है

जावा में एनकैप्सुलेशन और डेटा छिपाने पर विस्तृत मास्टरक्लास। एक्सेस विनिर्देशक (निजी, डिफ़ॉल्ट, संरक्षित, सार्वजनिक), एक्सेस संशोधक दृश्यता मैट्रिक्स, सत्यापन तर्क के साथ गेटर्स और सेटर्स, पैकेज संगठन, अमूर्त और एनकैप्सुलेशन के बीच अंतर, और सुरक्षित सॉफ्टवेयर आर्किटेक्चर को कवर करता है।

अध्याय रूपरेखा एवं प्रगति

1 1। एनकैप्सुलेशन: परिभाषा, उद्देश्य...
2 2. एक्सेस विनिर्देशक: चार दृश्यता क...
3 3. एक्सेसर्स और म्यूटेटर (गेटर्स एं...
4 4. एब्स्ट्रैक्शन बनाम एनकैप्सुलेशन:...
5 5. पैकेजिंग आर्किटेक्चर और नेमस्पेस...
6 6. एनकैप्सुलेशन के सॉफ्टवेयर इंजीनि...
7 7. संपूर्ण आईसीएसई बोर्ड कार्यक्रम:...
8 8. संपूर्ण आईसीएसई बोर्ड कार्यक्रम:...

सम्पूर्ण सैद्धांतिक एवं वैचारिक अध्ययन

1। एनकैप्सुलेशन: परिभाषा, उद्देश्य और डेटा छिपाना

एनकैप्सुलेशन आर्किटेक्चर
एनकैप्सुलेशन का सार:

Encapsulation डेटा (फ़ील्ड/वेरिएबल) और उस डेटा पर काम करने वाली विधियों को एक एकल, सुसंगत कम्प्यूटेशनल इकाई (क्लास) में लपेटना है। यह एक सुरक्षा कवच के रूप में कार्य करता है जो डेटा को शील्ड के बाहर बाहरी कोड द्वारा मनमाने ढंग से एक्सेस और संशोधित होने से रोकता है।

डेटा छिपाने की अनिवार्यता:

एनकैप्सुलेशन के बिना, सार्वजनिक क्षेत्र किसी भी समय दुष्ट या लापरवाह क्लाइंट कोड द्वारा दूषित हो सकते हैं:

// खतरनाक अनकैप्सुलेटेड कोड:
वर्ग बैंक खाता {
    सार्वजनिक दोहरा संतुलन; // सार्वजनिक भेद्यता!
}
// क्लाइंट कोड निष्पादित कर सकता है:
BankAccount acc = new BankAccount();
एसीसी.बैलेंस = -50000.0; // व्यावसायिक अखंडता को भ्रष्ट करता है!

बैलेंस को निजी घोषित करके और सभी अपडेट को सार्वजनिक डिपॉजिट() या निकासी() विधि के माध्यम से प्रसारित करके, वर्ग सख्त सत्यापन नियमों को लागू करता है (उदाहरण के लिए, नकारात्मक मात्रा और ओवरड्राफ्ट को अस्वीकार करना)।

2. एक्सेस विनिर्देशक: चार दृश्यता क्षितिज

एक्सेस स्पेसिफायर
जावा में चार एक्सेस स्तर:
एक्सेस स्पेसिफायरकीवर्डएक्सेसिबिलिटी स्कोपसुरक्षा स्तर
निजी निजी सुलभ केवल उसी वर्ग के भीतर जहां घोषित किया गया है। उपवर्गों और पैकेज साथियों के लिए अदृश्य। उच्चतम (सबसे अधिक प्रतिबंधात्मक)
डिफ़ॉल्ट (पैकेज-निजी) (कोई कीवर्ड नहीं) समान पैकेज के भीतर रहने वाले किसी भी वर्ग द्वारा पहुंच योग्य। पैकेज के बाहर अदृश्य. मध्यम
संरक्षित संरक्षित समान पैकेज के भीतर पहुंच योग्य और उपवर्गों द्वारा विरासत के माध्यम से बाहरी पैकेजों में स्थित। इंटरमीडिएट
सार्वजनिक सार्वजनिक संपूर्ण जावा एप्लिकेशन में किसी भी पैकेज में किसी भी वर्ग से पहुंच योग्य। न्यूनतम (अप्रतिबंधित)

3. एक्सेसर्स और म्यूटेटर (गेटर्स एंड सेटर्स आर्किटेक्चर)

गेटर्स और सेटर्स
नियंत्रित पढ़ने/लिखने के प्रोटोकॉल:

एक अच्छी तरह से संपुटित वर्ग JavaBeans नामकरण परंपराओं का पालन करते हुए मानकीकृत एक्सेसर (गेटर) और म्यूटेटर (सेटर) विधियों के माध्यम से अपनी निजी स्थिति को उजागर करता है:

  • गेट्टर विधि: निजी क्षेत्र का मान लौटाने वाली एक शुद्ध सार्वजनिक विधि (उदाहरण के लिए, public int getAge() {वापसी आयु; }).
  • सेटर विधि: एक अशुद्ध सार्वजनिक विधि जो एक नया मान प्राप्त करती है, इसे मान्य करती है, और निजी फ़ील्ड को अद्यतन करती है (उदाहरण के लिए, सार्वजनिक शून्य सेटएज (int आयु) { यदि (आयु > 0) यह.आयु = आयु; }).
  • केवल पढ़ने योग्य कक्षाएं: अपरिवर्तनीय ऑब्जेक्ट बनाने के लिए सभी सेटर विधियों को छोड़ दें जिनकी स्थिति कंस्ट्रक्टर आरंभीकरण के बाद उत्परिवर्तित नहीं की जा सकती।
  • केवल-लिखें कक्षाएं: गेटर विधियों को छोड़ दें (उदाहरण के लिए, सुरक्षित पासवर्ड प्रविष्टि के लिए)।

4. एब्स्ट्रैक्शन बनाम एनकैप्सुलेशन: निश्चित तुलना

तुलनात्मक विश्लेषण
एब्स्ट्रैक्शन बनाम एनकैप्सुलेशन:
तुलनात्मक मानदंडअमूर्तएनकैप्सुलेशन
मौलिक अवधारणापृष्ठभूमि जटिलता को छिपाना और केवल आवश्यक कार्यक्षमता दिखाना।डेटा और विधियों को एक साथ बांधना और आंतरिक स्थिति तक सीधी पहुंच को प्रतिबंधित करना।
प्राथमिक प्रश्नउत्तर: "ऑब्जेक्ट क्या करता है?"उत्तर: "ऑब्जेक्ट का डेटा कैसे सुरक्षित किया जाता है और सम्‍मिलित?"
जावा में कार्यान्वयनइंटरफेस और सार क्लासेस का उपयोग करके हासिल किया गया।क्लास का उपयोग करके हासिल किया गया और एक्सेस स्पेसिफायर (निजी).
वास्तविक-विश्व सादृश्यएक कार डैशबोर्ड जो यांत्रिक पावरट्रेन को प्रकट किए बिना गति दिखाता है।एक सुरक्षात्मक जिलेटिन खोल के भीतर दवा को बंद करने वाला एक फार्मास्युटिकल कैप्सूल।
फोकस स्तरडिज़ाइन स्तर (बाहरी इंटरैक्शन).कार्यान्वयन स्तर (आंतरिक सुरक्षा).

5. पैकेजिंग आर्किटेक्चर और नेमस्पेस प्रबंधन

पैकेज प्रबंधन
उपयोगकर्ता-परिभाषित पैकेज बनाना और उपयोग करना:

एक पैकेज एक नामकरण तंत्र और एक भौतिक निर्देशिका संरचना दोनों है। किसी क्लास को पैकेज में रखने के लिए, package स्टेटमेंट स्रोत फ़ाइल में सबसे पहली गैर-टिप्पणी पंक्ति होनी चाहिए:

पैकेज com.targetexams.school; // पंक्ति 1: पहला कथन होना चाहिए!

पब्लिक क्लास रिपोर्टकार्ड {
    // कक्षा कार्यान्वयन
}
आयात पैकेज:

बाहरी कक्षाएं आयात कीवर्ड का उपयोग करके पैकेज्ड कक्षाओं तक पहुंचती हैं:

  • import java.util.Scanner; (विशिष्ट वर्ग आयात - इष्टतम प्रदर्शन और शून्य नामकरण अस्पष्टता)।
  • import java.util.*; (वाइल्डकार्ड आयात - पैकेज में सभी वर्गों को आयात करता है, लेकिन उप-पैकेज को नहीं)।

6. एनकैप्सुलेशन के सॉफ्टवेयर इंजीनियरिंग गुण

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

7. संपूर्ण आईसीएसई बोर्ड कार्यक्रम: सुरक्षित बैंक खाता वर्ग

बोर्ड क्लास कार्यान्वयन
मॉडल प्रोग्राम 1: डेटा सत्यापन के साथ पूरी तरह से एन्क्रिप्टेड बैंक खाता
पब्लिक क्लास बैंकखाता {
    // 1. निजी डेटा सदस्य (डेटा छिपाना)
    निजी स्ट्रिंग खाता संख्या;
    निजी स्ट्रिंग खाताधारक;
    निजी दोहरा संतुलन;

    // 2. पैरामीटरयुक्त कंस्ट्रक्टर
    सार्वजनिक बैंक खाता (स्ट्रिंग खाता संख्या, स्ट्रिंग धारक, डबल प्रारंभिक जमा) {
        this.accountNumber = accNo;
        this.accountHolder = धारक;
        यदि (प्रारंभिक जमा >= 500.0) {
            यह.शेष = प्रारंभिक जमा;
        }अन्यथा{
            System.out.println('चेतावनी: न्यूनतम प्रारंभिक जमा राशि 500 रुपये है। शेष राशि 500.0 पर सेट है।');
            यह.शेष = 500.0;
        }
    }

    // 3. गेटर मेथड्स (एक्सेसर्स)
    सार्वजनिक स्ट्रिंग getAccountNumber() { रिटर्न अकाउंटनंबर; }
    सार्वजनिक स्ट्रिंग getAccountHolder() { रिटर्न अकाउंटहोल्डर; }
    सार्वजनिक डबल गेटबैलेंस() { रिटर्न बैलेंस; }

    // 4. सख्त संपुटित व्यावसायिक नियमों के साथ उत्परिवर्तक विधियाँ
    सार्वजनिक शून्य जमा (दोगुनी राशि) {
        यदि (राशि > 0) {
            शेष += राशि;
            System.out.println("रु. " + राशि + " सफलतापूर्वक जमा किया गया। अद्यतन शेष: रु. " + शेष);
        }अन्यथा{
            System.out.println ("त्रुटि: जमा राशि सख्ती से सकारात्मक होनी चाहिए!");
        }
    }

    सार्वजनिक शून्य निकासी (दोगुनी राशि) {
        यदि (राशि <= 0) {
            System.out.println("Error: Withdrawal amount must be positive!");
        } else if (balance - amount < 500.0) {
            System.out.println("Error: Insufficient funds! Minimum balance of Rs. 500 must be retained.");
        } else {
            balance -= amount;
            System.out.println("Rs. " + amount + " withdrawn successfully. Remaining Balance: Rs. " + balance);
        }
    }

    public static void main(String[] args) {
        BankAccount acc = new BankAccount("SB-10294", "Pooja Hegde", 15000.0);
        acc.deposit(5000.0);
        acc.withdraw(18000.0); // Rejected due to minimum balance rule!
        acc.withdraw(8000.0);  // Accepted
    }
}

8. संपूर्ण आईसीएसई बोर्ड कार्यक्रम: संक्षिप्त कर्मचारी पेरोल क्लास

बोर्ड क्लास कार्यान्वयन
मॉडल प्रोग्राम 2: वेतन गणना के साथ संक्षिप्त कर्मचारी वर्ग
सार्वजनिक वर्ग कर्मचारी वेतन {
    निजी इंट पैन;
    निजी स्ट्रिंग नाम;
    निजी दोहरा करआय;
    निजी दोहरा कर;

    सार्वजनिक शून्य इनपुटइन्फो (इंट पैन, स्ट्रिंग नाम, डबल टैक्सइनकम) {
        यह.पैन = पैन;
        यह.नाम = नाम;
        this.taxIncome = करआय;
    }

    सार्वजनिक शून्य कैलटैक्स() {
        यदि (करआय <= 250000) {
            tax = 0.0;
        } else if (taxIncome <= 500000) {
            tax = (taxIncome - 250000) * 0.10;
        } else if (taxIncome <= 1000000) {
            tax = (250000 * 0.10) + ((taxIncome - 500000) * 0.20);
        } else {
            tax = (250000 * 0.10) + (500000 * 0.20) + ((taxIncome - 1000000) * 0.30);
        }
    }

    public void displayInfo() {
        System.out.println("Pan Number	Name		Taxable Income	Tax Payable");
        System.out.println(pan + "		" + name + "		Rs. " + taxIncome + "	Rs. " + tax);
    }

    public static void main(String[] args) {
        EmployeeSalary emp = new EmployeeSalary();
        emp.inputInfo(1092837, "Rajesh Kumar", 750000.0);
        emp.calTax();
        emp.displayInfo();
    }
}

सामान्य गलतियाँ एवं परीक्षक के जाल (Examiner Traps)

सामान्य भ्रम / गलत उत्तर

क्लास डिज़ाइन प्रश्नों में इंस्टेंस वेरिएबल्स को सार्वजनिक घोषित करना

सही वैज्ञानिक तथ्य

बोर्ड-अनिवार्य एनकैप्सुलेशन मानकों का पालन करने के लिए हमेशा इंस्टेंस वेरिएबल्स को 'निजी' घोषित करें।

सामान्य भ्रम / गलत उत्तर

यह सोचना कि 'डिफ़ॉल्ट' एक्सेस के लिए एक वास्तविक कीवर्ड है विशिष्टता

सही वैज्ञानिक तथ्य

'डिफ़ॉल्ट' एक्सेस स्तर का नाम है जब कोई संशोधक कीवर्ड नहीं लिखा जाता है। 'डिफ़ॉल्ट int x;' लिखना अवैध वाक्यविन्यास है।

सामान्य भ्रम / गलत उत्तर

परिभाषाओं में एनकैप्सुलेशन के साथ अमूर्तता को भ्रमित करना

सही वैज्ञानिक तथ्य

अमूर्तता = जटिलता को छिपाना (क्या); एनकैप्सुलेशन = डेटा और विधियों को बाइंड करना + डेटा छिपाना (कैसे)।

सामान्य भ्रम / गलत उत्तर

आयात विवरण के नीचे पैकेज स्टेटमेंट लिखना

सही वैज्ञानिक तथ्य

पैकेज स्टेटमेंट जावा फ़ाइल की पंक्ति 1 होना चाहिए; आयात विवरण इसके नीचे अवश्य होने चाहिए।

आर्किटेक्चरल ब्लूप्रिंट: एनकैप्सुलेशन

ICSE Class 10 Java : Encapsulation & Access Specifier Protection Shield Java Access Specifiers Visibility Hierarchy Matrix Access Specifier Same Class Same Package Subclass (Diff Pkg) World (Everywhere) private YES (✓) NO (✗) NO (✗) NO (✗) default (package) YES (✓) YES (✓) NO (✗) NO (✗) protected YES (✓) YES (✓) YES (✓) NO (✗) public YES (✓) YES (✓) YES (✓) YES (✓) Data Hiding & Controlled Mutation Mechanics • Data Hiding: Making variables private ensures external code cannot tamper with internal state directly. • Getters & Setters: Public methods provide controlled read/write access with validation logic (e.g., rejecting negative balances). • Loose Coupling: Internal data representations can change without breaking client code that depends only on public methods.

अध्याय का सार संक्षेप एवं 10 मुख्य निष्कर्ष

मुख्य बिंदु 1
एनकैप्सुलेशन मौलिक OOP तंत्र है जो डेटा विशेषताओं और विधियों को एक एकल वर्ग इकाई में लपेटता है, जो सीधे बाहरी पहुंच (डेटा छिपाना) को रोकता है।
मुख्य बिंदु 2
डेटा छिपाना जावा में `private` एक्सेस विनिर्देशक के साथ इंस्टेंस वेरिएबल घोषित करके प्राप्त किया जाता है।
मुख्य बिंदु 3
Java चार एक्सेस स्तर प्रदान करता है: `private` (केवल वर्ग), `default` (केवल पैकेज), `protected` (पैकेज और उपवर्ग), और `public` (हर जगह पहुंच योग्य).
मुख्य बिंदु 4
`default` एक स्पष्ट कीवर्ड नहीं है; यह एक्सेस स्तर तब लागू होता है जब कोई एक्सेस संशोधक निर्दिष्ट नहीं होता है।
मुख्य बिंदु 5
गेटर विधियां (एक्सेसर्स) निजी चर तक पढ़ने की पहुंच प्रदान करती हैं; सेटर विधियां (म्यूटेटर) सत्यापन जांच के साथ नियंत्रित लेखन पहुंच प्रदान करती हैं।
मुख्य बिंदु 6
एब्स्ट्रैक्शन एक ऑब्जेक्ट 'क्या' करता है (इंटरफ़ेस/अवलोकन योग्य व्यवहार) पर केंद्रित है, जबकि एनकैप्सुलेशन 'कैसे' डेटा को सुरक्षित और बाध्य किया जाता है (कार्यान्वयन/डेटा छिपाना) पर केंद्रित है।
मुख्य बिंदु 7
पैकेज संबंधित कक्षाओं को व्यवस्थित करते हैं और पहुंच सीमाएं स्थापित करते हैं; `import` कथन का उपयोग करके विभिन्न पैकेजों में कक्षाओं को स्पष्ट रूप से आयात किया जाना चाहिए।
मुख्य बिंदु 8
`protected` संशोधक विशेष रूप से विरासत के लिए डिज़ाइन किया गया है, जो मूल पैकेज के बाहर रहने वाले उपवर्गों तक पहुंच प्रदान करता है।
मुख्य बिंदु 9
एनकैप्सुलेशन ढीली युग्मन और उच्च सामंजस्य को बढ़ावा देता है, जिससे डेवलपर्स सार्वजनिक विधि हस्ताक्षरों को बदले बिना आंतरिक वर्ग कार्यान्वयन को संशोधित करने में सक्षम होते हैं।
मुख्य बिंदु 10
तक पहुंचने का प्रयास किया जा रहा है किसी अन्य वर्ग का `private` फ़ील्ड एक संकलन-समय त्रुटि उत्पन्न करता है: 'क्लासनेम में निजी पहुंच है'।

स्व-मूल्यांकन अभ्यास (Check Your Understanding)

मूल वैचारिक स्पष्टता की जांच के लिए नैदानिक प्रश्न। पहले स्वयं हल करें, फिर उत्तर देखें।

1
एनकैप्सुलेशन क्या है? यह जावा में डेटा छिपाने की ओर कैसे ले जाता है?
उत्तर एवं व्याख्या देखें
उत्तर: एनकैप्सुलेशन पैकेजिंग डेटा विशेषताओं (वेरिएबल्स) का मौलिक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग सिद्धांत है और वे तरीके जो उन्हें क्लास नामक एकल एकीकृत निर्माण में हेरफेर करते हैं। यह 'निजी' एक्सेस संशोधक के साथ इंस्टेंस वेरिएबल्स को अर्हता प्राप्त करके डेटा छिपाना प्राप्त करता है, जिससे उन्हें सीधे बाहरी पढ़ने या लिखने के संचालन के लिए पूरी तरह से दुर्गम बना दिया जाता है। आंतरिक स्थिति तक पहुंच को नियंत्रित सार्वजनिक गेटर और सेटर विधियों के माध्यम से सख्ती से विनियमित किया जाता है जो सत्यापन तर्क को लागू करते हैं।
2
प्रतिबंधात्मकता को कम करने के क्रम में जावा में उपलब्ध चार एक्सेस विनिर्देशकों की सूची बनाएं।
उत्तर एवं व्याख्या देखें
उत्तर: 1। 'निजी': केवल घोषित वर्ग (सबसे अधिक प्रतिबंधात्मक) के भीतर ही पहुंच योग्य। 2. 'डिफ़ॉल्ट' (पैकेज-निजी): एक ही पैकेज के भीतर किसी भी वर्ग द्वारा पहुंच योग्य (कोई कीवर्ड इस्तेमाल नहीं किया गया)। 3. 'संरक्षित': एक ही पैकेज के भीतर और अन्य पैकेजों में उपवर्गों द्वारा पहुंच योग्य। 4. 'सार्वजनिक': पूरे एप्लिकेशन में किसी भी पैकेज में किसी भी वर्ग द्वारा पहुंच योग्य (कम से कम प्रतिबंधात्मक)।
3
उचित वास्तविक दुनिया सादृश्य के साथ एब्स्ट्रैक्शन और एनकैप्सुलेशन के बीच अंतर करें।
उत्तर एवं व्याख्या देखें
उत्तर: अमूर्तन आंतरिक कार्यान्वयन जटिलताओं को छिपाते हुए आवश्यक विशेषताओं और व्यवहारों को उजागर करने की प्रक्रिया है (उदाहरण के लिए, टीवी रिमोट कंट्रोल का उपयोग करना जहां बटन इलेक्ट्रॉनिक सर्किट आर्किटेक्चर को प्रकट किए बिना चैनल शिफ्ट को ट्रिगर करते हैं)। एनकैप्सुलेशन प्रतिबंधित पहुंच के साथ एक सुरक्षात्मक सीमा में डेटा और परिचालन विधियों का भौतिक बंडल है (उदाहरण के लिए, रिमोट का प्लास्टिक खोल जो नाजुक बैटरी और माइक्रोचिप्स को छेड़छाड़ से बचाता है)।
4
गेट्टर और सेटर विधियों की क्या भूमिका है? वे सार्वजनिक इंस्टेंस वेरिएबल्स की तुलना में बेहतर क्यों हैं?
उत्तर एवं व्याख्या देखें
उत्तर: गेटर्स (एक्सेसर्स) निजी वेरिएबल्स को नियंत्रित पढ़ने की पहुंच प्रदान करते हैं, जबकि सेटर्स (म्यूटेटर्स) नियंत्रित लेखन पहुंच प्रदान करते हैं। वे सार्वजनिक चर से कहीं बेहतर हैं क्योंकि: 1. सेटर्स सत्यापन नियमों को शामिल कर सकते हैं (जैसे नकारात्मक कीमतों या अमान्य उम्र को अस्वीकार करना)। 2. वे वेरिएबल्स को केवल-पढ़ने के लिए (सेटर्स को छोड़कर) बनाने की अनुमति देते हैं। 3. वे बाहरी सार्वजनिक एपीआई से आंतरिक डेटा प्रतिनिधित्व को अलग करते हैं।
5
'संरक्षित' एक्सेस विनिर्देशक के साथ घोषित सदस्य की पहुंच क्या है?
उत्तर एवं व्याख्या देखें
उत्तर: एक 'संरक्षित' सदस्य तक पहुँचा जा सकता है: 1. घोषित वर्ग के समान पैकेज के भीतर रहने वाले किसी भी वर्ग द्वारा। 2. 'एक्सटेंड्स' कीवर्ड के माध्यम से इनहेरिटेंस के माध्यम से बनाए गए किसी भी उपवर्ग (चाइल्ड क्लास) द्वारा, भले ही वह उपवर्ग पूरी तरह से अलग पैकेज में स्थित हो।
6
क्या होता है जब क्लास ए में कोड सीधे क्लास बी में एक निजी फ़ील्ड तक पहुंचने का प्रयास करता है?
उत्तर एवं व्याख्या देखें
उत्तर: जावा कंपाइलर कोड को अस्वीकार कर देता है और एक कंपाइल-टाइम सिंटैक्स त्रुटि उत्पन्न करता है जिसमें कहा गया है: 'फ़ील्डनाम की क्लासबी में निजी पहुंच है'। अपने परिभाषित वर्ग के बाहर निजी सदस्यों तक सीधी पहुंच भाषा सिंटैक्स द्वारा निषिद्ध है।
7
जावा पैकेज क्या है? स्रोत फ़ाइल में 'पैकेज' कथन के संबंध में अनिवार्य नियम बताएं।
उत्तर एवं व्याख्या देखें
उत्तर: A जावा पैकेज एक नामित नेमस्पेस और निर्देशिका संरचना है जो संबंधित कक्षाओं, इंटरफेस और उप-पैकेजों को एक साथ समूहित करता है, नामकरण टकराव को रोकता है और पहुंच सुरक्षा प्रदान करता है। अनिवार्य नियम यह है कि 'पैकेज' स्टेटमेंट (उदाहरण के लिए, 'पैकेज कॉम.स्कूल;') जावा स्रोत फ़ाइल में पहला गैर-टिप्पणी स्टेटमेंट होना चाहिए।
8
क्या एक शीर्ष-स्तरीय जावा क्लास को 'निजी' या 'संरक्षित' घोषित किया जा सकता है?
उत्तर एवं व्याख्या देखें
उत्तर: नहीं, एक शीर्ष-स्तरीय वर्ग (सीधे फ़ाइल में घोषित एक बाहरी वर्ग) को केवल 'सार्वजनिक' पहुंच या 'डिफ़ॉल्ट' (पैकेज-निजी) पहुंच के साथ घोषित किया जा सकता है। केवल किसी अन्य वर्ग के अंदर परिभाषित नेस्टेड/आंतरिक कक्षाओं को 'निजी' या 'संरक्षित' घोषित किया जा सकता है।
अध्याय का अध्ययन पूर्ण हुआ?
अभ्यास के लिए तैयार?

ऑनलाइन CBT टेस्ट देकर तैयारी का मूल्यांकन करें

झारखण्ड बोर्ड परीक्षा पैटर्न पर आधारित बहुविकल्पीय प्रश्नों का ऑनलाइन टेस्ट दें। तुरंत परिणाम, समय विश्लेषण और प्रत्येक प्रश्न का विस्तृत हल प्राप्त करें।