शीर्ष 100 जावा साक्षात्कार प्रश्न और उत्तर (पीडीएफ डाउनलोड करें)

विषय - सूची:

Anonim

डाउनलोड पीडीऍफ़

हमने सबसे अधिक बार पूछे जाने वाले जावा साक्षात्कार प्रश्न और उत्तर संकलित किए हैं जो आपको मूल जावा साक्षात्कार प्रश्नों के लिए तैयार करने में मदद करेंगे जो एक साक्षात्कारकर्ता आपसे अपने साक्षात्कार के दौरान पूछ सकता है। बेसिक जावा साक्षात्कार प्रश्नों की इस सूची में, हमने नौकरी के साक्षात्कार को स्पष्ट करने में आपकी मदद करने के लिए विस्तृत उत्तरों के साथ सामान्यतः पूछे जाने वाले सभी मूल और उन्नत कोर जावा साक्षात्कार प्रश्नों को कवर किया है।

निम्नलिखित सूची में फ्रेशर्स के साथ-साथ जावा इंटरव्यू के लिए 100 महत्वपूर्ण कोर जावा इंटरव्यू प्रश्न और अनुभवी प्रोग्रामर के लिए उत्तर और प्रश्न हैं जो उन्हें साक्षात्कार के लिए तैयार करने में मदद करते हैं। जावा प्रोग्रामिंग के लिए साक्षात्कार प्रश्नों की यह विस्तृत मार्गदर्शिका आपको आसानी से अपने नौकरी के साक्षात्कार को क्रैक करने में मदद करेगी।

फ्रेशर्स और अनुभवी के लिए कोर जावा साक्षात्कार प्रश्न और उत्तर

Q1। इनर क्लास और सब-क्लास के बीच क्या अंतर है?

उत्तर: इनर क्लास एक ऐसा वर्ग है जो किसी अन्य वर्ग के भीतर निहित है। एक आंतरिक वर्ग के पास उस वर्ग के लिए पहुँच अधिकार हैं जो उसे नेस्ट कर रहा है और वह बाहरी वर्ग में परिभाषित सभी चर और विधियों तक पहुँच सकता है।

एक उप-वर्ग एक वर्ग है जो सुपर क्लास नामक एक अन्य वर्ग से विरासत में मिला है। उप-वर्ग अपने सुपर क्लास के सभी सार्वजनिक और संरक्षित तरीकों और क्षेत्रों तक पहुंच सकता है।

Q2। जावा कक्षाओं के लिए विभिन्न पहुँच विनिर्देशक क्या हैं?

उत्तर: जावा में, एक्सेस स्पेसियर एक वर्ग नाम से पहले उपयोग किए जाने वाले कीवर्ड हैं जो एक्सेस गुंजाइश को परिभाषित करते हैं। वर्गों के लिए पहुँच विनिर्देशक के प्रकार हैं:

1. सार्वजनिक: कक्षा, विधि, क्षेत्र कहीं से भी सुलभ है।

2. संरक्षित: विधि, फ़ील्ड को उसी वर्ग से एक्सेस किया जा सकता है जिसमें वे संबंधित हैं या उप-कक्षाओं से, और उसी पैकेज के वर्ग से, लेकिन बाहर से नहीं।

3. डिफॉल्ट: मेथड, फील्ड, क्लास को केवल एक ही पैकेज से एक्सेस किया जा सकता है, न कि इसके मूल पैकेज के बाहर से।

4. निजी: विधि, फ़ील्ड को उसी वर्ग से एक्सेस किया जा सकता है जहां वे हैं।

Q3। स्थैतिक तरीकों और स्थिर चर का उद्देश्य क्या है?

उत्तर: जब प्रत्येक वस्तु के लिए अलग-अलग प्रतियां बनाने के बजाय किसी वर्ग की कई वस्तुओं के बीच एक विधि या चर साझा करने की आवश्यकता होती है, तो हम सभी वस्तुओं के लिए साझा की गई विधि या चर बनाने के लिए स्थैतिक कीवर्ड का उपयोग करते हैं।

Q4। डेटा इनकैप्सुलेशन क्या है और इसका क्या महत्व है?

उत्तर: एनकैप्सुलेशन एक इकाई में गुण और विधियों के संयोजन के लिए ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में एक अवधारणा है।

एनकैप्सुलेशन प्रोग्रामर को सॉफ्टवेयर विकास के लिए एक मॉड्यूलर दृष्टिकोण का पालन करने में मदद करता है क्योंकि प्रत्येक ऑब्जेक्ट के पास तरीकों और चर का अपना सेट होता है और अन्य वस्तुओं से स्वतंत्र अपने कार्य करता है। एनकैप्सुलेशन भी डेटा छिपाने के उद्देश्य को पूरा करता है।

क्यू 5। एक एकल वर्ग क्या है? इसके उपयोग का व्यावहारिक उदाहरण दीजिए।

जावा में एक एकल वर्ग केवल एक उदाहरण हो सकता है और इसलिए इसके सभी तरीके और चर सिर्फ एक उदाहरण के हैं। सिंगलटन क्लास कॉन्सेप्ट उन परिस्थितियों के लिए उपयोगी है जब किसी क्लास के लिए ऑब्जेक्ट की संख्या को सीमित करने की आवश्यकता होती है।

सिंगलटन उपयोग परिदृश्य का सबसे अच्छा उदाहरण तब होता है जब कुछ चालक सीमाओं के कारण या किसी लाइसेंसिंग समस्या के कारण डेटाबेस में केवल एक कनेक्शन होने की सीमा होती है।

Q6। जावा में लूप क्या हैं? तीन प्रकार के लूप क्या हैं?

उत्तर: लूपिंग का उपयोग प्रोग्रामिंग में स्टेटमेंट या स्टेटमेंट के ब्लॉक को बार-बार निष्पादित करने के लिए किया जाता है। जावा में तीन प्रकार के लूप हैं:

1) लूप्स के लिए

दिए गए समयों के लिए बार-बार कथन निष्पादित करने के लिए जावा में छोरों का उपयोग किया जाता है। जब प्रोग्रामर को ज्ञात करने के लिए कई बार लूप का उपयोग किया जाता है।

2) जबकि लूप्स

जबकि लूप का उपयोग तब किया जाता है जब कुछ बयानों को एक शर्त पूरी होने तक बार-बार निष्पादित करने की आवश्यकता होती है। लूप्स में, स्टेटमेंट्स को निष्पादित करने से पहले सबसे पहले जाँच की जाती है।

3) लूप करते समय करें

डू जबकि लूप समान है जबकि लूप केवल अंतर के साथ है जो स्टेटमेंट के ब्लॉक के निष्पादन के बाद स्थिति की जाँच करता है। इसलिए लूप करते समय, कम से कम एक बार स्टेटमेंट निष्पादित किया जाता है।

Q7: एक अनंत लूप क्या है? अनंत लूप कैसे घोषित किया जाता है?

उत्तर: एक अनंत लूप बिना किसी शर्त के चलता है और असीम रूप से चलता है। स्टेटमेंट ब्लॉक्स के किसी भी ब्रेकिंग लॉजिक को परिभाषित करके एक अनंत लूप को तोड़ा जा सकता है।

अनंत लूप को निम्नानुसार घोषित किया गया है:

for (;;){// Statements to execute// Add any loop breaking logic}

प्रश्न 8। जारी और विराम कथन में क्या अंतर है?

उत्तर: ब्रेक और जारी रखना दो महत्वपूर्ण कीवर्ड हैं जिनका उपयोग लूप्स में किया जाता है। जब एक ब्रेक कीवर्ड का उपयोग एक लूप में किया जाता है, तो लूप को तुरंत तोड़ दिया जाता है जब कीवर्ड का उपयोग जारी रखा जाता है, तो वर्तमान पुनरावृत्ति टूट जाती है और लूप अगले प्रवाह के साथ जारी रहता है।

नीचे उदाहरण में, काउंटर 4 तक पहुंचने पर लूप टूट जाता है।

for (counter = 0; counter & lt; 10; counter++)system.out.println(counter);if (counter == 4) {break;}}

नीचे दिए गए उदाहरण में जब काउंटर 4 तक पहुंच जाता है, तो लूप अगली पुनरावृत्ति पर कूद जाता है और वर्तमान पुनरावृत्ति के लिए जारी कीवर्ड को छोड़ दिए जाने के बाद कोई भी बयान।

for (counter = 0; counter < 10; counter++)system.out.println(counter);if (counter == 4) {continue;}system.out.println("This will not get printed when counter is 4");}

क्यू 9। जावा में डबल और फ्लोट चर के बीच अंतर क्या है?

Ans: जावा में, फ्लोट मेमोरी में 4 बाइट लेता है जबकि डबल मेमोरी में 8 बाइट लेता है। फ्लोट एकल परिशुद्धता फ्लोटिंग पॉइंट दशमलव संख्या है जबकि डबल डबल परिशुद्धता दशमलव संख्या है।

प्रश्न 10। जावा में अंतिम कीवर्ड क्या है? एक उदाहरण दें।

उत्तर: जावा में, कीवर्ड फाइनल का उपयोग करके एक स्थिरांक घोषित किया जाता है। मान केवल एक बार असाइनमेंट के बाद सौंपा जा सकता है, स्थिरांक का मान नहीं बदला जा सकता है।

नीचे दिए गए उदाहरण में, const_val नाम के साथ एक स्थिरांक घोषित किया गया है और उसे असाइन किया गया है:

निजी अंतिम int const_val = 100

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

जब एक वर्ग को अंतिम घोषित किया जाता है, तो उसे उपवर्गित नहीं किया जा सकता है। उदाहरण स्ट्रिंग, इंटेगर और अन्य आवरण कक्षाएं।

प्रश्न 11। टर्नरी ऑपरेटर क्या है? एक उदाहरण दें।

उत्तर: टर्नरी ऑपरेटर, जिसे सशर्त ऑपरेटर भी कहा जाता है, यह तय करने के लिए उपयोग किया जाता है कि बूलियन मूल्य मूल्यांकन के आधार पर एक चर को किस मूल्य पर असाइन किया जाए। यह के रूप में चिह्नित है?

नीचे के उदाहरण में, यदि रैंक 1 है, तो स्थिति को "पूर्ण" और "लंबित" का मान दिया जाता है।

public class conditionTest {public static void main(String args[]) {String status;int rank = 3;status = (rank == 1) ? "Done" : "Pending";System.out.println(status);}}

Q12: आप जावा में यादृच्छिक संख्या कैसे उत्पन्न कर सकते हैं?

उत्तर:

  • Math.random () का उपयोग करके आप यादृच्छिक संख्या को 0.1 से अधिक या इसके बराबर में 1.0 से कम और अधिकतम में उत्पन्न कर सकते हैं
  • पैकेज java.util में रैंडम क्लास का उपयोग करना

प्रश्न 13। डिफ़ॉल्ट स्विच केस क्या है? मिसाल दो।

उत्तर: स्विच स्टेटमेंट में, कोई अन्य स्विच कंडीशन मैच होने पर डिफ़ॉल्ट केस निष्पादित होता है। डिफ़ॉल्ट केस एक वैकल्पिक मामला है। इसे केवल तभी देखा जा सकता है जब अन्य सभी स्विच मामलों को कोड किया गया हो।

नीचे दिए गए उदाहरण में, जब स्कोर 1 या 2 नहीं है, तो डिफ़ॉल्ट मामले का उपयोग किया जाता है।

public class switchExample {int score = 4;public static void main(String args[]) {switch (score) {case 1:system.out.println("Score is 1");break;case 2:system.out.println("Score is 2");break;default:system.out.println("Default Case");}}}

प्रश्न 14। जावा में आधार वर्ग क्या है जिससे सभी वर्ग व्युत्पन्न हैं?

Ans: java.lang.object

प्र 15। क्या जावा में मुख्य () विधि किसी भी डेटा को वापस कर सकती है?

उत्तर: जावा में, मुख्य () विधि किसी भी डेटा को वापस नहीं कर सकती है और इसलिए, इसे हमेशा शून्य रिटर्न प्रकार के साथ घोषित किया जाता है।

प्रश्न 16। जावा पैकेज क्या हैं? संकुल का महत्व क्या है?

उत्तर: जावा में, पैकेज कक्षाओं और इंटरफेस का एक संग्रह है, जो एक साथ बंडल किए जाते हैं क्योंकि वे एक दूसरे से संबंधित हैं। पैकेज का उपयोग डेवलपर्स को कोड को संशोधित करने और उचित पुन: उपयोग के लिए कोड को समूह बनाने में मदद करता है। एक बार कोड पैकेज में पैक कर दिया गया है, इसे अन्य वर्गों में आयात किया जा सकता है और उपयोग किया जा सकता है।

प्रश्न 17। क्या हम किसी अमूर्त पद्धति के बिना एक वर्ग को सार घोषित कर सकते हैं?

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

प्रश्न 18। Java में Abstract Class और Interface में क्या अंतर है?

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

अमूर्त वर्गों और इंटरफेस के उपयोग में एक और महत्वपूर्ण अंतर यह है कि एक वर्ग जो एक इंटरफ़ेस को लागू करता है उसे इंटरफ़ेस के सभी तरीकों को लागू करना चाहिए, जबकि एक वर्ग जो एक अमूर्त वर्ग से विरासत में मिला है उसे अपने सुपर क्लास के सभी तरीकों के कार्यान्वयन की आवश्यकता नहीं है।

एक वर्ग कई इंटरफेस को लागू कर सकता है लेकिन यह केवल एक सार वर्ग का विस्तार कर सकता है।

प्रश्न 19। अमूर्त वर्गों पर इंटरफेस के प्रदर्शन निहितार्थ क्या हैं?

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

इंटरफेस का उपयोग डेवलपर्स पर एक अतिरिक्त बोझ डालता है क्योंकि किसी भी समय एक क्लास में इंटरफ़ेस लागू किया जाता है; डेवलपर इंटरफ़ेस के प्रत्येक और हर तरीके को लागू करने के लिए मजबूर है।

प्रश्न 20। क्या एक पैकेज आयात करना अपने उप-पैकेजों के साथ-साथ जावा में भी आयात करता है?

उत्तर: जावा में, जब एक पैकेज आयात किया जाता है, तो उसके उप-पैकेज आयात नहीं किए जाते हैं और यदि आवश्यक हो तो डेवलपर को उन्हें अलग से आयात करना पड़ता है।

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

यूनिवर्सिटी को आयात करें। बॉक्स। *

प्रश्न 21। क्या हम अपनी कक्षा की मुख्य विधि को निजी घोषित कर सकते हैं?

उत्तर: जावा में, किसी भी एप्लिकेशन को सही ढंग से चलाने के लिए मुख्य विधि सार्वजनिक स्थैतिक होनी चाहिए। यदि मुख्य विधि को निजी घोषित किया जाता है, तो डेवलपर को कोई संकलन त्रुटि नहीं मिलेगी, लेकिन यह निष्पादित नहीं होगी और रनटाइम त्रुटि देगा।

प्रश्न 22। हम मान द्वारा पास के बजाय किसी फ़ंक्शन को संदर्भ से कैसे पास कर सकते हैं?

उत्तर: जावा में, हम किसी फ़ंक्शन को केवल मान से और संदर्भ द्वारा नहीं पारित कर सकते हैं।

प्र 23। जावा में किसी वस्तु को कैसे क्रमबद्ध किया जाता है?

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

प्रश्न 24। जब हमें क्रमांकन का उपयोग करना चाहिए?

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

प्रश्न 25। क्या एक्सेप्शन हैंडलिंग के लिए जावा में कैच ब्लॉक द्वारा आजमाया जाना अनिवार्य है?

उत्तर: ब्लॉक को पकड़ने की जरूरत है या तो कैच ब्लॉक या अंत में ब्लॉक या दोनों। कोशिश ब्लॉक से फेंके गए किसी भी अपवाद को या तो कैच ब्लॉक में पकड़ा जाना चाहिए या फिर कोड एबॉर्शन में डालने से पहले किए जाने वाले किसी भी विशिष्ट कार्य को अंततः ब्लॉक में रखा जाना चाहिए।

प्रश्न 26। क्या अपवाद को ब्लॉक करने का कोई तरीका है, भले ही अपवाद ब्लॉक में कुछ अपवाद हो?

उत्तर: यदि कोई अपवाद ट्राई ब्लॉक में उठाया जाता है, तो ब्लॉक को पकड़ने के लिए नियंत्रण पास होता है यदि यह अन्यथा ब्लॉक करने के लिए मौजूद है। अंत में ब्लॉक को हमेशा निष्पादित किया जाता है जब अपवाद होता है और अंत में ब्लॉक में किसी भी बयान के निष्पादन से बचने का एकमात्र तरीका कोशिश ब्लॉक के अंत में कोड की निम्नलिखित पंक्ति लिखकर जबरन कोड को निरस्त करना है:

System.exit(0);

प्रश्न 27। जब एक वर्ग का निर्माण होता है?

उत्तर: किसी क्लास का कंस्ट्रक्टर हर बार नए कीवर्ड के साथ एक ऑब्जेक्ट बनाया जाता है।

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

public class const_example {const_example() {system.out.println("Inside constructor");}public static void main(String args[]) {const_example c1 = new const_example();const_example c2 = new const_example();}}

प्रश्न 28। क्या एक क्लास में कई कंस्ट्रक्टर हो सकते हैं?

उत्तर: हां, एक वर्ग में विभिन्न मापदंडों के साथ कई निर्माता हो सकते हैं। ऑब्जेक्ट निर्माण के लिए किस निर्माता का उपयोग किया जाता है, वस्तुओं को बनाते समय पारित तर्कों पर निर्भर करता है।

प्रश्न 29। क्या हम किसी कक्षा के स्थिर तरीकों को ओवरराइड कर सकते हैं?

उत्तर: हम स्थैतिक तरीकों को ओवरराइड नहीं कर सकते। स्टेटिक तरीके एक वर्ग के होते हैं, न कि व्यक्तिगत वस्तुओं के। और संकलन के समय हल किए जाते हैं (रनटाइम के समय नहीं)। यदि हम स्थैतिक विधि को ओवरराइड करने की कोशिश करते हैं, तो हमें शिकायत की त्रुटि नहीं मिलेगी, और न ही ओवरराइडिंग का प्रभाव। कोड।

Q30। नीचे दिए गए उदाहरण में, आउटपुट क्या होगा?

public class superclass {public void displayResult() {system.out.println("Printing from superclass");}}public class subclass extends superclass {public void displayResult() {system.out.println("Displaying from subClass");super.displayResult();}public static void main(String args[]) {subclass obj = new subclass();obj.displayResult();}}

उत्तर : आउटपुट होगा:

उपवर्ग से प्रदर्शित करना

सुपरक्लास से प्रदर्शित

Q31। क्या स्ट्रिंग डेटा जावा में है?

उत्तर: स्ट्रिंग जावा में एक आदिम डेटा प्रकार नहीं है। जब एक तार जावा में बनाया जाता है, तो यह वास्तव में Java.Lang.String वर्ग का एक ऑब्जेक्ट होता है जो बनता है। इस स्ट्रिंग ऑब्जेक्ट के निर्माण के बाद स्ट्रिंग क्लास पर निर्मित सभी तरीकों का उपयोग स्ट्रिंग ऑब्जेक्ट पर किया जा सकता है।

Q32। नीचे दिए गए उदाहरण में, कितने स्ट्रिंग ऑब्जेक्ट बनाए गए हैं?

String s1="I am Java Expert";String s2="I am C Expert";String s3="I am Java Expert";

उत्तर: उपर्युक्त उदाहरण में, Java.Lang.String वर्ग की दो वस्तुएँ बनाई गई हैं। s1 और s3 एक ही वस्तु के संदर्भ हैं।

Q33। जावा में स्ट्रिंग्स को अपरिवर्तनीय क्यों कहा जाता है?

उत्तर: जावा में, स्ट्रिंग ऑब्जेक्ट्स को अपरिवर्तनीय कहा जाता है क्योंकि एक बार एक स्ट्रिंग को मान दिया गया है, इसे बदला नहीं जा सकता है और यदि बदल दिया जाता है, तो एक नई वस्तु बनाई जाती है।

नीचे दिए गए उदाहरण में, संदर्भ str का अर्थ एक स्ट्रिंग ऑब्जेक्ट है जिसका मूल्य "वैल्यू वन" है।

String str="Value One";

जब कोई नया मान उसे सौंपा जाता है, तो एक नई स्ट्रिंग ऑब्जेक्ट बन जाती है और संदर्भ को नई ऑब्जेक्ट में ले जाया जाता है।

str="New Value";

प्र 34। एक सरणी और वेक्टर के बीच अंतर क्या है?

उत्तर: एक ही समूह में एक ही आदिम प्रकार का डेटा होता है और प्रकृति में स्थिर होता है जबकि वैक्टर प्रकृति में गतिशील होते हैं और विभिन्न प्रकार के डेटा को धारण कर सकते हैं।

प्रश्न 35। मल्टी-थ्रेडिंग क्या है?

उत्तर: मल्टी थ्रेडिंग एक प्रोग्रामिंग कॉन्सेप्ट है जो एक ही कार्यक्रम में कई कार्यों को समवर्ती तरीके से चलाता है। थ्रेड्स समान प्रक्रिया स्टैक और समानांतर में चल रहे हैं। यह किसी भी कार्यक्रम के प्रदर्शन में सुधार करने में मदद करता है।

Q36। Java में Runnable Interface का उपयोग क्यों किया जाता है?

उत्तर: बहु थ्रेडेड अनुप्रयोगों को लागू करने के लिए जावा में रनने योग्य इंटरफ़ेस का उपयोग किया जाता है। Java.Lang.Runnable इंटरफ़ेस बहु थ्रेडिंग का समर्थन करने के लिए एक वर्ग द्वारा कार्यान्वित किया जाता है।

प्रश्न 37। जावा में मल्टी-थ्रेडिंग को लागू करने के दो तरीके क्या हैं?

उत्तर: जावा में बहु थ्रेडेड अनुप्रयोगों को निम्नलिखित दो विधियों में से किसी एक का उपयोग करके विकसित किया जा सकता है:

1. Java.Lang.Runnable Interface का उपयोग करके। बहु सूत्रण को सक्षम करने के लिए कक्षाएं इस इंटरफ़ेस को लागू करती हैं। इस इंटरफ़ेस में एक रन () विधि है जिसे कार्यान्वित किया जाता है।

2. एक वर्ग लिखकर जो Java.Lang.Thread क्लास का विस्तार करता है।

Q38। जब डेटा में बहुत सारे बदलावों की आवश्यकता होती है, तो किसको प्राथमिकता दी जानी चाहिए? स्ट्रिंग या StringBuffer?

उत्तर: चूंकि स्ट्रिंगबफ़र प्रकृति में गतिशील हैं और हम स्ट्रिंग के विपरीत स्ट्रिंगर ऑब्जेक्ट्स के मूल्यों को बदल सकते हैं जो अपरिवर्तनीय है, यह हमेशा स्ट्रिंगबफ़र का उपयोग करने का एक अच्छा विकल्प होता है जब डेटा बहुत अधिक बदला जा रहा है। यदि हम ऐसे मामले में स्ट्रिंग का उपयोग करते हैं, तो प्रत्येक डेटा परिवर्तन के लिए एक नई स्ट्रिंग ऑब्जेक्ट बनाई जाएगी जो एक अतिरिक्त ओवरहेड होगी।

Q39। स्विच स्टेटमेंट के प्रत्येक मामले में ब्रेक का उपयोग करने का उद्देश्य क्या है?

उत्तर: ब्रेक का उपयोग प्रत्येक मामले (पिछले एक को छोड़कर) के बाद एक स्विच में किया जाता है ताकि मान्य मामले के बाद कोड टूट जाए और कार्यवाही के मामलों में भी प्रवाह न हो।

यदि प्रत्येक मामले के बाद ब्रेक का उपयोग नहीं किया जाता है, तो वैध मामले के बाद सभी मामलों को भी निष्पादित किया जाता है, जिसके परिणामस्वरूप गलत परिणाम होते हैं।

Q40। जावा में कचरा संग्रहण कैसे किया जाता है?

उत्तर: जावा में, जब किसी वस्तु को संदर्भित नहीं किया जाता है, तो कचरा संग्रह होता है और वस्तु अपने आप नष्ट हो जाती है। स्वचालित कचरा संग्रहण के लिए जावा या तो System.gc () विधि या Runtime.gc () विधि कहता है।

Q41। मुख्य विधि से पहले ही हम किसी भी कोड को कैसे निष्पादित कर सकते हैं?

उत्तर: यदि हम कक्षा के लोड समय पर वस्तुओं के निर्माण से पहले किसी भी कथन को निष्पादित करना चाहते हैं, तो हम कक्षा में कोड के एक स्थिर ब्लॉक का उपयोग कर सकते हैं। कोड के इस स्थिर ब्लॉक के अंदर कोई भी बयान मुख्य विधि में वस्तुओं के निर्माण से पहले ही कक्षा को लोड करने के समय एक बार निष्पादित हो जाएगा।

प्रश्न 42। क्या एक वर्ग एक ही समय में एक सुपर क्लास और एक उप-वर्ग हो सकता है? मिसाल दो।

उत्तर: यदि वंशानुक्रम का उपयोग किया जाता है, तो एक वर्ग दूसरे वर्ग के लिए एक सुपर क्लास और उसी समय एक दूसरे के लिए एक उप-वर्ग हो सकता है।

नीचे दिए गए उदाहरण में, महाद्वीप वर्ग विश्व स्तर का उप-वर्ग है और यह देश के वर्ग का सुपर वर्ग है।

public class world {… .}public class continenet extends world {… }public class country extends continent {… .}

Q43। यदि कोई रचनाकार वर्ग में परिभाषित नहीं किया जाता है, तो कक्षा की वस्तुएं कैसे बनाई जाती हैं?

उत्तर: भले ही कोई स्पष्ट निर्माता जावा वर्ग में परिभाषित नहीं किया गया हो, ऑब्जेक्ट को सफलतापूर्वक बनाया जाता है क्योंकि डिफ़ॉल्ट निर्माता को ऑब्जेक्ट निर्माण के लिए अंतर्निहित रूप से उपयोग किया जाता है। इस निर्माता के पास कोई पैरामीटर नहीं है।

प्रश्न 44। मल्टी-थ्रेडिंग में हम यह कैसे सुनिश्चित कर सकते हैं कि एक संसाधन का उपयोग एक साथ कई थ्रेड द्वारा नहीं किया जाता है?

उत्तर: मल्टी-थ्रेडिंग में, कई थ्रेड्स के बीच साझा किए गए संसाधनों तक पहुंच को सिंक्रोनाइज़ेशन की अवधारणा का उपयोग करके नियंत्रित किया जा सकता है। सिंक्रोनाइज़्ड कीवर्ड का उपयोग करके, हम यह सुनिश्चित कर सकते हैं कि एक समय में केवल एक थ्रेड साझा संसाधन का उपयोग कर सकता है और अन्य केवल एक बार संसाधन का नियंत्रण प्राप्त कर सकते हैं, जबकि यह उपयोग करने वाले अन्य से मुक्त हो जाता है।

प्रश्न 45। क्या हम किसी वस्तु के लिए एक से अधिक बार कक्षा के निर्माता को बुला सकते हैं?

उत्तर: जब हम किसी नए कीवर्ड का उपयोग करके कोई ऑब्जेक्ट बनाते हैं तो कंस्ट्रक्टर को स्वचालित रूप से कहा जाता है। यह ऑब्जेक्ट के निर्माण के समय केवल एक बार किसी ऑब्जेक्ट के लिए कहा जाता है और इसलिए, हम इसके निर्माण के बाद किसी ऑब्जेक्ट के लिए फिर से कंस्ट्रक्टर को आमंत्रित नहीं कर सकते।

Q46। वर्ग ए और वर्ग बी नाम के दो वर्ग हैं। दोनों वर्ग एक ही पैकेज में हैं। क्या classA के किसी निजी सदस्य को classB के ऑब्जेक्ट द्वारा एक्सेस किया जा सकता है?

उत्तर: किसी वर्ग के निजी सदस्य उस वर्ग के दायरे से बाहर नहीं जा सकते हैं और समान पैकेज में भी कोई अन्य वर्ग उन्हें एक्सेस नहीं कर सकता है।

प्रश्न 47। क्या एक ही नाम वाले वर्ग में हमारे दो तरीके हो सकते हैं?

उत्तर: हम एक ही नाम के साथ वर्ग में दो विधियों को परिभाषित कर सकते हैं लेकिन विभिन्न संख्या / प्रकार के मापदंडों के साथ। किस विधि को लागू करना है यह पारित किए गए मापदंडों पर निर्भर करेगा।

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

public class methodExample {public void print() {system.out.println("Print method without parameters.");}public void print(String name) {system.out.println("Print method with parameter");}public static void main(String args[]) {methodExample obj1 = new methodExample();obj1.print();obj1.print("xx");}}

प्रश्न 48। हम एक जावा ऑब्जेक्ट की प्रतिलिपि कैसे बना सकते हैं?

उत्तर: हम किसी वस्तु की प्रतिलिपि बनाने के लिए क्लोनिंग की अवधारणा का उपयोग कर सकते हैं। क्लोन का उपयोग करके, हम एक वस्तु की वास्तविक स्थिति के साथ प्रतियां बनाते हैं।

क्लोन () क्लोन करने योग्य इंटरफ़ेस की एक विधि है और इसलिए, ऑब्जेक्ट कॉपी बनाने के लिए क्लोन करने योग्य इंटरफ़ेस को लागू करने की आवश्यकता है।

Q49। उत्तराधिकार का उपयोग करने से क्या लाभ है?

उत्तर: वंशानुक्रम का उपयोग करने का मुख्य लाभ कोड की पुन: प्रयोज्य है क्योंकि वंशानुक्रम उप-वर्गों को अपने सुपर क्लास के कोड का पुन: उपयोग करने में सक्षम बनाता है। बहुरूपता (एक्स्टेंसिबिलिटी) एक और महान लाभ है जो मौजूदा व्युत्पन्न वर्गों को प्रभावित किए बिना नई कार्यक्षमता को पेश करने की अनुमति देता है।

क्यू 50। एक वर्ग के चर और तरीकों के लिए डिफ़ॉल्ट पहुंच निर्दिष्ट क्या है?

उत्तर: चर और विधि के लिए डिफ़ॉल्ट पहुँच विनिर्देशक पैकेज संरक्षित है अर्थात चर और वर्ग किसी भी अन्य वर्ग के लिए उपलब्ध है लेकिन एक ही पैकेज में, पैकेज के बाहर नहीं।

Q51। जावा वर्ग में पॉइंटर्स के उपयोग का एक उदाहरण दें।

उत्तर: जावा में कोई संकेत नहीं हैं। इसलिए हम जावा में पॉइंटर्स की अवधारणा का उपयोग नहीं कर सकते हैं।

Q52। हम एक वर्ग के लिए विरासत को कैसे प्रतिबंधित कर सकते हैं ताकि कोई भी वर्ग इससे विरासत में न मिले?

उत्तर: यदि हम चाहते हैं कि कोई वर्ग किसी भी वर्ग द्वारा आगे नहीं बढ़ाया जाए, तो हम कक्षा के नाम के साथ कीवर्ड फाइनल का उपयोग कर सकते हैं ।

निम्नलिखित उदाहरण में, स्टोन वर्ग अंतिम है और इसका विस्तार नहीं किया जा सकता है

public Final Class Stone {// Class methods and Variables}

Q53। संरक्षित एक्सेस स्पेसियर का एक्सेस स्कोप क्या है?

उत्तर: जब किसी विधि या चर को संरक्षित अभिगम विनिर्देशक के साथ घोषित किया जाता है, तो यह उसी वर्ग, उसी संकुल के किसी अन्य वर्ग के साथ-साथ उप-वर्ग में भी सुलभ हो जाता है।

संशोधक

कक्षा

पैकेज

उपवर्ग

विश्व

जनता

संरक्षित

एन

कोई संशोधक नहीं

एन

एन

निजी

एन

एन

एन

Q54। स्टैक और कतार के बीच क्या अंतर है?

उत्तर: स्टैक और कतार दोनों को डेटा के संग्रह के लिए प्लेसहोल्डर के रूप में उपयोग किया जाता है। एक स्टैक और एक कतार के बीच प्राथमिक अंतर यह है कि स्टैक लास्ट इन फर्स्ट आउट (LIFO) सिद्धांत पर आधारित है जबकि एक कतार FIFO (फर्स्ट इन फर्स्ट आउट) सिद्धांत पर आधारित है।

Q55। जावा में, हम चर के क्रमांकन को कैसे समाप्त कर सकते हैं?

उत्तर: यदि हम चाहते हैं कि किसी वर्ग के निश्चित चर को क्रमबद्ध न किया जाए, तो हम उन्हें घोषित करते समय खोजशब्द क्षणिक का उपयोग कर सकते हैं। उदाहरण के लिए, नीचे दिया गया चर trans_var एक क्षणिक चर है और इसे क्रमबद्ध नहीं किया जा सकता है:

public class transientExample {private transient trans_var;// rest of the code}

प्रश्न 56। हम वस्तुओं के रूप में आदिम डेटा प्रकारों का उपयोग कैसे कर सकते हैं?

उत्तर: प्राइमरी डेटा प्रकार जैसे int को उनके संबंधित आवरण वर्गों के उपयोग द्वारा वस्तुओं के रूप में संभाला जा सकता है। उदाहरण के लिए, इंटेगर आदिम डेटा प्रकार इंट के लिए एक आवरण वर्ग है। हम रैपर क्लास के लिए अलग तरीके लागू कर सकते हैं, किसी भी अन्य ऑब्जेक्ट की तरह।

Q57। संकलन के समय किस प्रकार के अपवाद पकड़े जाते हैं?

उत्तर: चेक किए गए अपवादों को कार्यक्रम संकलन के समय पकड़ा जा सकता है। कोड को सफलतापूर्वक पकड़ने के लिए कोड को चेक ब्लॉक में प्रयोग करके चेक किए गए अपवादों को नियंत्रित किया जाना चाहिए।

प्रश्न 58। एक धागे के विभिन्न राज्यों का वर्णन करें।

उत्तर: जावा में एक धागा निम्नलिखित राज्यों में से किसी एक में हो सकता है:

  • तैयार: जब एक धागा बनाया जाता है, तो वह तैयार अवस्था में होता है।
  • रनिंग: वर्तमान में निष्पादित किया जा रहा एक धागा चालू स्थिति में है।
  • प्रतीक्षारत: एक धागा कुछ संसाधनों को मुक्त करने के लिए प्रतीक्षा करने की स्थिति में है।
  • मृत: एक धागा जो निष्पादन के बाद मृत हो गया है वह मृत अवस्था में है।

Q59। क्या हम एक स्पष्ट रचनाकार को परिभाषित करने पर भी एक वर्ग के डिफ़ॉल्ट निर्माता का उपयोग कर सकते हैं?

उत्तर: यदि जावा वर्ग में कोई स्पष्ट कंस्ट्रक्टर परिभाषित नहीं है, तो जावा एक डिफ़ॉल्ट नो लॉजिक कंस्ट्रक्टर प्रदान करता है। लेकिन अगर एक स्पष्ट कंस्ट्रक्टर को परिभाषित किया गया है, तो डिफॉल्ट कंस्ट्रक्टर को आमंत्रित नहीं किया जा सकता है और डेवलपर केवल उन कंस्ट्रक्टरों का उपयोग कर सकता है जो कक्षा में परिभाषित हैं।

प्र 60। क्या हम एक ही विधि नाम और तर्कों का उपयोग करके एक विधि को ओवरराइड कर सकते हैं लेकिन विभिन्न रिटर्न प्रकार?

उत्तर: मेथड ओवरराइडिंग की मूल शर्त यह है कि विधि का नाम, तर्कों के साथ-साथ रिटर्न प्रकार भी वैसा ही होना चाहिए जैसा कि विधि के ओवरराइड होने का है। इसलिए एक अलग रिटर्न प्रकार का उपयोग करना एक विधि को ओवरराइड नहीं करता है।

Q61.What कोड के निम्नलिखित उत्पादन होगा?

public class operatorExample {public static void main(String args[]) {int x = 4;system.out.println(x++);}}

उत्तर: इस स्थिति में पोस्टफ़िक्स ++ ऑपरेटर का उपयोग किया जाता है जो पहले मूल्य और फिर वेतन वृद्धि लौटाता है। इसलिए यह आउटपुट 4 होगा।

Q61। एक व्यक्ति का कहना है कि उसने इसमें एक मुख्य विधि के बिना भी एक जावा वर्ग को सफलतापूर्वक संकलित किया है? क्या यह संभव है?

उत्तर: मुख्य विधि जावा वर्ग का एक प्रवेश बिंदु है और कार्यक्रम के निष्पादन के लिए आवश्यक है; एक वर्ग सफलतापूर्वक संकलित हो जाता है, भले ही उसके पास एक मुख्य विधि न हो। हालांकि इसे चलाया नहीं जा सकता।

Q62। क्या हम एक स्थैतिक विधि के अंदर से एक गैर-स्थैतिक विधि कह सकते हैं?

उत्तर: गैर-स्टैटिक विधियां किसी वर्ग की वस्तुओं के स्वामित्व में होती हैं और इसमें ऑब्जेक्ट स्तर की गुंजाइश होती है और स्टैटिक ब्लॉक से गैर-स्टेटिक विधियों को कॉल करने के लिए (जैसे स्थैतिक मुख्य विधि से), क्लास की एक वस्तु को बनाने की आवश्यकता होती है। प्रथम। फिर ऑब्जेक्ट संदर्भ का उपयोग करते हुए, इन तरीकों को लागू किया जा सकता है।

Q63। किसी भी जावा प्रोग्राम को चलाने के लिए दो पर्यावरण चर क्या होना चाहिए?

उत्तर: जावा प्रोग्राम को एक मशीन में तब ही क्रियान्वित किया जा सकता है, जब दो पर्यावरण चर ठीक से सेट हो गए हों:

  1. पथ चर
  2. कक्षा चर

Q64। क्या वैरिएबल को बिना इनिशियलाइज़ेशन के जावा में इस्तेमाल किया जा सकता है?

उत्तर: जावा में, यदि एक वैरिएबल का उपयोग किसी कोड में एक वैध मान के बिना प्रारंभिक इनिशियलाइज़ेशन के लिए किया जाता है, तो प्रोग्राम कंपाइल नहीं करता है और एक त्रुटि देता है क्योंकि कोई डिफ़ॉल्ट मान जावा में वेरिएबल्स को नहीं सौंपा गया है।

Q65। क्या जावा में एक वर्ग को एक से अधिक वर्ग से विरासत में मिला जा सकता है?

उत्तर: जावा में, एक वर्ग को केवल एक वर्ग से लिया जा सकता है, न कि कई वर्गों से। एकाधिक वंशानुक्रम जावा द्वारा समर्थित नहीं है।

क्यू 66। क्या एक निर्माता का जावा में क्लास नाम से अलग नाम हो सकता है?

उत्तर: जावा में कंस्ट्रक्टर का एक ही नाम होना चाहिए वर्ग नाम और यदि नाम अलग है, तो यह एक निर्माता के रूप में कार्य नहीं करता है और संकलक इसे एक सामान्य विधि के रूप में सोचता है।

Q67। राउंड (3.7) और Ceil (3.7) का आउटपुट क्या होगा?

Ans: राउंड (3.7) रिटर्न 4 और Ceil (3.7) रिटर्न 4।

Q68: क्या हम किसी विशेष लाइन में जाने के लिए जावा में गोटो का उपयोग कर सकते हैं?

उत्तर: जावा में, गोटो कीवर्ड नहीं है और जावा किसी विशेष लेबल वाली लाइन पर जाने की इस सुविधा का समर्थन नहीं करता है।

Q69। क्या एक मृत धागा फिर से शुरू किया जा सकता है?

उत्तर: जावा में, एक धागा जो मृत अवस्था में है, उसे फिर से शुरू नहीं किया जा सकता है। मृत धागे को फिर से शुरू करने का कोई तरीका नहीं है।

प्रश्न 70। क्या निम्न वर्ग की घोषणा सही है?

उत्तर:

public abstract final class testClass {// Class methods and variables}

उत्तर: उपरोक्त वर्ग की घोषणा गलत है क्योंकि एक सार वर्ग को अंतिम घोषित नहीं किया जा सकता है।

Q71। क्या जावा प्रोग्राम को चलाने के लिए प्रत्येक मशीन पर JDK की आवश्यकता होती है?

उत्तर: JDK जावा का विकास किट है और केवल विकास के लिए और मशीन पर जावा प्रोग्राम चलाने के लिए, JDK की आवश्यकता नहीं है। केवल JRE की आवश्यकता है।

Q72। तुलना विधि और == ऑपरेटर द्वारा की गई तुलना के बीच अंतर क्या है?

उत्तर: जावा में, दो स्ट्रिंग ऑब्जेक्ट्स की सामग्री की तुलना करने के लिए बराबर () विधि का उपयोग किया जाता है और यदि दो का समान मूल्य है, तो सही रिटर्न == ऑपरेटर दो स्ट्रिंग ऑब्जेक्ट्स के संदर्भों की तुलना करता है।

निम्नलिखित उदाहरण में, बराबर () सही है क्योंकि दो स्ट्रिंग ऑब्जेक्ट में समान मान हैं। हालाँकि == ऑपरेटर गलत है क्योंकि दोनों स्ट्रिंग ऑब्जेक्ट अलग-अलग ऑब्जेक्ट को संदर्भित कर रहे हैं:

public class equalsTest {public static void main(String args[]) {String str1 = new String("Hello World");String str2 = new String("Hello World");if (str1.equals(str2)){ // this condition is trueSystem.out.println("str1 and str2 are equal in terms of values");}if (str1 == str2) {//This condition is trueSystem.out.println("Both strings are referencing same object");} else{// This condition is NOT trueSystem.out.println("Both strings are referencing different objects");}}}

Q73। क्या जावा वर्ग में एक विधि को परिभाषित करना संभव है लेकिन सी जैसी अन्य भाषा के कोड में इसे लागू करना है?

उत्तर: हां, हम देशी तरीकों के उपयोग से ऐसा कर सकते हैं। मूल विधि आधारित विकास के मामले में, हम अपने जावा वर्ग में सार्वजनिक स्थैतिक विधियों को इसके क्रियान्वयन के बिना परिभाषित करते हैं और फिर कार्यान्वयन सी की तरह किसी अन्य भाषा में किया जाता है।

Q74। जावा में विध्वंसक कैसे परिभाषित किए जाते हैं?

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

Q75। क्या एक चर एक ही समय में स्थानीय और स्थिर हो सकता है?

उत्तर: कोई भी वैरिएबल स्थिर होने के साथ-साथ स्थानीय भी नहीं हो सकता। स्‍थानीय चर को स्थिर के रूप में परिभाषित करना संकलन त्रुटि देता है।

प्र .76। क्या हमारे पास इंटरफ़ेस में स्थिर तरीके हो सकते हैं?

उत्तर: किसी भी क्लास में स्टेटिक तरीकों को ओवरराइड नहीं किया जा सकता है, जबकि एक इंटरफेस में कोई भी तरीके डिफॉल्ट एब्सट्रैक्ट के होते हैं और इन्हें इंटरफेस को लागू करने वाली कक्षाओं में लागू किया जाना चाहिए। तो यह जावा में एक इंटरफ़ेस में स्थिर तरीकों का कोई मतलब नहीं है।

Q77। एक इंटरफ़ेस को लागू करने वाले वर्ग में, क्या हम इंटरफ़ेस में परिभाषित किसी भी चर का मान बदल सकते हैं?

उत्तर: नहीं, हम कार्यान्वयन वर्ग में एक इंटरफ़ेस के किसी भी वैरिएबल का मान नहीं बदल सकते क्योंकि इंटरफ़ेस में परिभाषित सभी चर डिफ़ॉल्ट सार्वजनिक, स्थिर और अंतिम हैं और अंतिम चर स्थिरांक की तरह हैं जिन्हें बाद में नहीं बदला जा सकता है।

Q78। क्या यह कहना सही है कि जावा में कचरा संग्रहण सुविधा के कारण, एक जावा प्रोग्राम कभी भी मेमोरी से बाहर नहीं जाता है?

उत्तर: भले ही जावा द्वारा स्वचालित कचरा संग्रह प्रदान किया जाता है, लेकिन यह सुनिश्चित नहीं करता है कि जावा प्रोग्राम मेमोरी से बाहर नहीं जाएगा क्योंकि संभावना है कि कचरा संग्रह की तुलना में जावा वस्तुओं का निर्माण तेज गति से हो रहा है जिसके परिणामस्वरूप सभी उपलब्ध मेमोरी संसाधनों को भरना।

इसलिए, कचरा संग्रह स्मृति से बाहर जाने वाले कार्यक्रम की संभावनाओं को कम करने में मदद करता है लेकिन यह सुनिश्चित नहीं करता है।

प्र .79। क्या हमारे पास मुख्य विधि के लिए शून्य की तुलना में कोई अन्य रिटर्न प्रकार हो सकता है?

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

फिर भी, यदि आपको पूरी तरह से मुख्य विधि के पूरा होने पर एक मूल्य वापस करना होगा, तो आप System.exit (int स्थिति) का उपयोग कर सकते हैं

Q80। एक बार कचरा इकट्ठा हो जाने के बाद मैं किसी वस्तु को फिर से पहुंचाना और उपयोग करना चाहता हूं। यह कैसे संभव है?

उत्तर: कचरा संग्रहकर्ता द्वारा एक वस्तु नष्ट हो जाने के बाद, यह अब ढेर पर मौजूद नहीं है और इसे फिर से एक्सेस नहीं किया जा सकता है। इसे फिर से संदर्भित करने का कोई तरीका नहीं है।

Q81। जावा थ्रेड प्रोग्रामिंग में, सभी थ्रेड्स के लिए कौन सी विधि लागू करनी चाहिए?

उत्तर: रन () रननेबल इंटरफ़ेस की एक विधि है जिसे सभी थ्रेड्स द्वारा कार्यान्वित किया जाना चाहिए।

Q82। मैं अपने कार्यक्रम में डेटाबेस कनेक्शन को नियंत्रित करना चाहता हूं और चाहता हूं कि एक समय में केवल एक धागा ही डेटाबेस कनेक्शन बनाने में सक्षम हो। मैं इस तर्क को कैसे लागू कर सकता हूं?

उत्तर: इसे सिंक्रोनाइज़ेशन की अवधारणा के उपयोग द्वारा कार्यान्वित किया जा सकता है। डेटाबेस से संबंधित कोड को एक विधि में रखा जा सकता है जो सिंक्रोनाइज़्ड कीवर्ड को सुरक्षित रखता है ताकि एक बार में केवल एक धागा ही उस तक पहुंच सके।

Q83। प्रोग्रामर द्वारा मैन्युअल रूप से एक अपवाद कैसे फेंका जा सकता है?

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

public void topMethod() {try {excMethod();} catch (ManualException e) {}}public void excMethod {String name = null;if (name == null) {throw (new ManualException("Exception thrown manually ");}}

Q84। मैं चाहता हूं कि मेरी कक्षा को इस तरह से विकसित किया जाए कि कोई भी अन्य वर्ग (यहां तक ​​कि व्युत्पन्न वर्ग) अपनी वस्तुएं न बना सके। ऐसा मैं किस प्रकार करूं?

उत्तर: यदि हम किसी वर्ग के निर्माता को निजी घोषित करते हैं, तो वह किसी अन्य वर्ग द्वारा सुलभ नहीं होगा और इसलिए, कोई भी अन्य वर्ग उसे त्वरित रूप से लागू नहीं कर सकेगा और उसकी वस्तु का निर्माण केवल उसी तक सीमित रहेगा।

Q85। जावा में वस्तुओं को कैसे संग्रहीत किया जाता है?

Ans: जावा में, निर्मित प्रत्येक वस्तु को ढेर से मेमोरी स्पेस मिलता है। जब कोई वस्तु एक कचरा संग्राहक द्वारा नष्ट हो जाती है, तो उसे ढेर से आवंटित स्थान को फिर से आवंटित किया जाता है और किसी भी नई वस्तुओं के लिए उपलब्ध हो जाता है।

प्रश्न 86। हम ढेर पर किसी वस्तु का वास्तविक आकार कैसे पा सकते हैं?

उत्तर: जावा में, ढेर पर किसी वस्तु के सटीक आकार का पता लगाने का कोई तरीका नहीं है।

Q87। निम्नलिखित में से किस वर्ग को अधिक मेमोरी आवंटित की जाएगी?

कक्षा ए: तीन विधियाँ, चार चर, कोई वस्तु नहीं

कक्षा बी: पाँच विधियाँ, तीन चर, कोई वस्तु नहीं

उत्तर: मेमोरी वस्तुओं के निर्माण से पहले आवंटित नहीं की जाती है। चूंकि दोनों वर्गों के लिए, कोई भी वस्तु नहीं बनाई गई है, इसलिए किसी भी वर्ग के लिए ढेर पर कोई मेमोरी आवंटित नहीं की जाती है।

Q88। यदि किसी कार्यक्रम में अपवाद को नियंत्रित नहीं किया जाता है तो क्या होता है?

उत्तर: यदि किसी प्रोग्राम में ट्रायल कैच ब्लॉक्स का उपयोग करके अपवाद को संभाला नहीं जाता है, तो प्रोग्राम निरस्त हो जाता है और स्टेटमेंट फेंकने के बाद कोई स्टेटमेंट निष्पादित नहीं होता है।

प्र .89। मेरे पास एक कक्षा में कई निर्माता हैं। क्या किसी अन्य निर्माता के शरीर से एक निर्माता को कॉल करना संभव है?

उत्तर: यदि किसी वर्ग के पास कई कंस्ट्रक्टर हैं, तो एक कंस्ट्रक्टर को किसी दूसरे के शरीर से इस () का उपयोग करके कॉल करना संभव है ।

प्रश्न 90। अनाम वर्ग का क्या अर्थ है?

उत्तर: एक अनाम वर्ग एक ऐसा वर्ग है जिसे नए कीवर्ड का उपयोग करके कोड की एक भी पंक्ति में किसी भी नाम के बिना परिभाषित किया गया है।

उदाहरण के लिए, नीचे दिए गए कोड में हमने कोड की एक पंक्ति में एक अनाम वर्ग को परिभाषित किया है:

public java.util.Enumeration testMethod(){return new java.util.Enumeration(){@Overridepublic boolean hasMoreElements(){// TODO Auto-generated method stubreturn false;}@Overridepublic Object nextElement(){// TODO Auto-generated method stubreturn null;}}

Q91। क्या घोषणा के बाद किसी सरणी के आकार को बढ़ाने का कोई तरीका है?

उत्तर: Arrays स्थिर है और एक बार हमने इसका आकार निर्दिष्ट कर दिया है, हम इसे बदल नहीं सकते हैं। अगर हम ऐसे संग्रह का उपयोग करना चाहते हैं, जहां हमें आकार में परिवर्तन (वस्तुओं में से कोई भी) की आवश्यकता हो सकती है, तो हमें वेक्टर को सरणी से अधिक पसंद करना चाहिए।

Q92। यदि किसी एप्लिकेशन में कई वर्ग हैं, तो क्या एक से अधिक कक्षाओं में मुख्य पद्धति का होना ठीक है?

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

Q93। मैं बाद में उपयोग के लिए वस्तुओं का डेटा जारी रखना चाहता हूं। ऐसा करने के लिए सबसे अच्छा तरीका क्या है?

उत्तर: भविष्य के उपयोग के लिए डेटा को बनाए रखने का सबसे अच्छा तरीका क्रमांकन की अवधारणा का उपयोग करना है।

Q94। जावा में एक स्थानीय वर्ग क्या है?

उत्तर: जावा में, यदि हम एक विशेष खंड के अंदर एक नई कक्षा को परिभाषित करते हैं, तो इसे स्थानीय कक्षा कहा जाता है। इस तरह के एक वर्ग का स्थानीय दायरा होता है और यह उस खंड के बाहर प्रयोग करने योग्य नहीं होता है जहाँ इसकी परिभाषा है।

क्यू 95। स्ट्रिंग और StringBuffer दोनों स्ट्रिंग वस्तुओं का प्रतिनिधित्व करते हैं। क्या हम Java में String और StringBuffer की तुलना कर सकते हैं?

उत्तर: हालांकि स्ट्रिंग और स्ट्रिंगबर्गर दोनों स्ट्रिंग वस्तुओं का प्रतिनिधित्व करते हैं, हम उनकी एक दूसरे के साथ तुलना नहीं कर सकते हैं और यदि हम उनकी तुलना करने की कोशिश करते हैं, तो हमें एक त्रुटि मिलती है।

Q96। जावा द्वारा वस्तुओं के सेट पर संचालन के लिए कौन सा एपीआई प्रदान किया जाता है?

उत्तर: जावा एक संग्रह एपीआई प्रदान करता है जो कई उपयोगी तरीके प्रदान करता है जिसे वस्तुओं के एक सेट पर लागू किया जा सकता है। संग्रह एपीआई द्वारा प्रदान किए गए कुछ महत्वपूर्ण वर्गों में ArrayList, HashMap, TreeSet और TreeMap शामिल हैं।

प्रश्न 97। क्या हम किसी अन्य प्रकार की बूलियन टाइप कास्टिंग के साथ कर सकते हैं?

उत्तर: नहीं, हम बूलियन डेटा प्रकार के लिए न तो किसी अन्य आदिम प्रकार को कास्ट कर सकते हैं और न ही बूलियन डेटा प्रकार को किसी अन्य आदिम डेटा प्रकार में डाल सकते हैं।

Q98। क्या ओवरराइड होने पर हम तरीकों के लिए अलग-अलग रिटर्न प्रकार का उपयोग कर सकते हैं?

उत्तर: जावा में ओवरराइडिंग मेथड की मूल आवश्यकता यह है कि ओवरराइड विधि का एक ही नाम होना चाहिए, और पैरामीटर्स। लेकिन एक विधि को एक अलग रिटर्न प्रकार के साथ ओवरराइड किया जा सकता है जब तक कि नया रिटर्न प्रकार मूल का विस्तार नहीं करता है।

उदाहरण के लिए, विधि एक संदर्भ प्रकार लौटा रही है।

Class B extends A {A method(int x) {//original method}B method(int x) {//overridden method}}

क्यू 99। सभी अपवाद वर्गों का आधार वर्ग क्या है?

उत्तर: जावा में, Java.lang.Throwable सभी अपवाद वर्गों का सुपर क्लास है और सभी अपवाद वर्ग इस बेस क्लास से प्राप्त होते हैं।

क्यू 100। उत्तराधिकार में निर्माणकर्ताओं के आह्वान का क्रम क्या है?

उत्तर: वंशानुक्रम के मामले में, जब एक व्युत्पन्न वर्ग का एक नया ऑब्जेक्ट बनाया जाता है, तो पहले सुपर क्लास के निर्माता का आह्वान किया जाता है और फिर व्युत्पन्न वर्ग के निर्माता का आह्वान किया जाता है।

अपनी नौकरी के लिए साक्षात्कार के लिए तैयारी करें !!! बेहतर तरीके से तैयार होने के लिए जावा ट्यूटोरियल से गुजरें।

यह विस्तृत जावा साक्षात्कार प्रश्न पीडीएफ आपको जावा साक्षात्कार के प्रश्नों के बारे में संदेह को दूर करने में मदद करेगा और आपको साक्षात्कार में दरार करने में भी मदद करेगा।