100 + Java साक्षात्कार प्रश्न और उत्तर (2025)
Java फ्रेशर्स के लिए प्रोग्रामिंग साक्षात्कार प्रश्न और उत्तर
1) इनर क्लास और सब-क्लास में क्या अंतर है?
इनर क्लास एक ऐसा क्लास है जो किसी दूसरे क्लास के भीतर नेस्टेड होता है। इनर क्लास के पास उस क्लास के लिए एक्सेस अधिकार होते हैं जो उसे नेस्टेड करता है और यह बाहरी क्लास में परिभाषित सभी वेरिएबल और मेथड्स तक पहुँच सकता है।
उप-वर्ग एक ऐसा वर्ग है जो सुपर क्लास नामक किसी अन्य वर्ग से विरासत में प्राप्त होता है। उप-वर्ग अपने सुपर क्लास के सभी सार्वजनिक और संरक्षित तरीकों और फ़ील्ड तक पहुँच सकता है।
👉 निःशुल्क पीडीएफ डाउनलोड: Java साक्षात्कार साक्षात्कार प्रश्न और उत्तर >>
2) विभिन्न एक्सेस विनिर्देशक क्या हैं? Java कक्षाएं?
In Javaएक्सेस स्पेसिफ़ायर क्लास नाम से पहले इस्तेमाल किए जाने वाले कीवर्ड हैं जो एक्सेस स्कोप को परिभाषित करते हैं। क्लास के लिए एक्सेस स्पेसिफ़ायर के प्रकार हैं:
1) सार्वजनिक: क्लास, विधि, फ़ील्ड कहीं से भी सुलभ है।
2) संरक्षित: विधि, फ़ील्ड को उसी वर्ग से एक्सेस किया जा सकता है जिससे वे संबंधित हैं या उप-वर्गों से, और उसी पैकेज के वर्ग से, लेकिन बाहर से नहीं।
3) डिफ़ॉल्ट: विधि, फ़ील्ड, क्लास को केवल उसी पैकेज से एक्सेस किया जा सकता है, न कि उसके मूल पैकेज के बाहर से।
4) निजी: विधि, फ़ील्ड को उसी वर्ग से एक्सेस किया जा सकता है जिससे वे संबंधित हैं।
3) स्थैतिक विधियों और स्थैतिक चरों का उद्देश्य क्या है?
जब किसी क्लास के एकाधिक ऑब्जेक्ट्स के बीच किसी विधि या वेरिएबल को साझा करने की आवश्यकता होती है, तो प्रत्येक ऑब्जेक्ट के लिए अलग-अलग प्रतियां बनाने के बजाय, हम सभी ऑब्जेक्ट्स के लिए विधि या वेरिएबल को साझा करने के लिए static कीवर्ड का उपयोग करते हैं।
4) डेटा एनकैप्सुलेशन क्या है और इसका महत्व क्या है?
एनकैप्सुलेशन ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में एक अवधारणा है जिसमें गुणों और विधियों को एक इकाई में संयोजित किया जाता है।
एनकैप्सुलेशन प्रोग्रामर्स को सॉफ्टवेयर डेवलपमेंट के लिए मॉड्यूलर दृष्टिकोण अपनाने में मदद करता है क्योंकि प्रत्येक ऑब्जेक्ट के पास अपने तरीके और चर होते हैं और अन्य ऑब्जेक्ट से स्वतंत्र रूप से अपने कार्य करते हैं। एनकैप्सुलेशन डेटा छिपाने के उद्देश्य से भी काम करता है।
5) सिंगलटन क्लास क्या है? इसके उपयोग का व्यावहारिक उदाहरण दीजिए।
जावा में एक सिंगलटन क्लास का केवल एक ही इंस्टेंस हो सकता है और इसलिए इसके सभी तरीके और वैरिएबल सिर्फ़ एक इंस्टेंस से संबंधित होते हैं। सिंगलटन क्लास कॉन्सेप्ट उन स्थितियों के लिए उपयोगी है जब किसी क्लास के लिए ऑब्जेक्ट की संख्या को सीमित करने की आवश्यकता होती है।
सिंगलटन उपयोग परिदृश्य का सबसे अच्छा उदाहरण वह है जब कुछ ड्राइवर सीमाओं या किसी लाइसेंसिंग मुद्दों के कारण डेटाबेस से केवल एक कनेक्शन रखने की सीमा होती है।
6) लूप्स क्या हैं? Javaलूप के तीन प्रकार क्या हैं?
लूपिंग का उपयोग प्रोग्रामिंग में किसी कथन या कथन के ब्लॉक को बार-बार निष्पादित करने के लिए किया जाता है। इसके तीन प्रकार हैं लूप के प्रकार Java:
1) फॉर लूप्स
जावा में फॉर लूप का उपयोग कथनों को बार-बार एक निश्चित संख्या में निष्पादित करने के लिए किया जाता है। फॉर लूप का उपयोग तब किया जाता है जब प्रोग्रामर को कथनों को निष्पादित करने की संख्या ज्ञात हो।
2) जबकि लूप्स
While loop का उपयोग तब किया जाता है जब किसी निश्चित कथन को बार-बार निष्पादित करने की आवश्यकता होती है जब तक कि कोई शर्त पूरी न हो जाए। While loop में, कथनों के निष्पादन से पहले शर्त की जाँच की जाती है।
3) डू व्हाइल लूप्स
Do While Loop, While loop के समान ही है, केवल अंतर यह है कि कथनों के ब्लॉक के निष्पादन के बाद स्थिति की जाँच की जाती है। इसलिए Do While loop के मामले में, कथनों को कम से कम एक बार निष्पादित किया जाता है।
7) अनंत लूप क्या है? अनंत लूप कैसे घोषित किया जाता है?
अनंत लूप बिना किसी शर्त के चलता है और अनंत तक चलता है। स्टेटमेंट ब्लॉक के बॉडी में किसी भी ब्रेकिंग लॉजिक को परिभाषित करके अनंत लूप को तोड़ा जा सकता है।
अनंत लूप निम्न प्रकार घोषित किया जाता है:
for (;;) { // Statements to execute // Add any loop breaking logic }
8) continue और break कथन में क्या अंतर है?
ब्रेक और कंटिन्यू लूप में इस्तेमाल किए जाने वाले दो महत्वपूर्ण कीवर्ड हैं। जब लूप में ब्रेक कीवर्ड का इस्तेमाल किया जाता है, तो लूप तुरंत टूट जाता है जबकि जब कंटिन्यू कीवर्ड का इस्तेमाल किया जाता है, तो वर्तमान पुनरावृत्ति टूट जाती है और लूप अगले पुनरावृत्ति के साथ जारी रहता है।
नीचे दिए गए उदाहरण में, जब काउंटर 4 पर पहुंचता है तो लूप टूट जाता है।
for (counter = 0; counter & lt; 10; counter++) system.out.println(counter); if (counter == 4) { break; } }
नीचे दिए गए उदाहरण में जब काउंटर 4 पर पहुंचता है, तो लूप अगले पुनरावृत्ति पर चला जाता है और continue कीवर्ड के बाद के किसी भी कथन को वर्तमान पुनरावृत्ति के लिए छोड़ दिया जाता है।
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) डबल और फ्लोट वेरिएबल्स में क्या अंतर है? Java?
जावा में, फ़्लोट मेमोरी में 4 बाइट्स लेता है जबकि Double मेमोरी में 8 बाइट्स लेता है। फ़्लोट एकल परिशुद्धता फ़्लोटिंग पॉइंट दशमलव संख्या है जबकि Double डबल परिशुद्धता दशमलव संख्या है.
10) अंतिम कीवर्ड क्या है? Javaएक उदाहरण दीजिए।
जावा में, किसी स्थिरांक को Final कीवर्ड का उपयोग करके घोषित किया जाता है। मान केवल एक बार ही निर्दिष्ट किया जा सकता है और निर्दिष्ट करने के बाद, स्थिरांक का मान बदला नहीं जा सकता।
नीचे दिए गए उदाहरण में, 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); } }
12) आप यादृच्छिक संख्याएँ कैसे उत्पन्न कर सकते हैं? Java?
- Math.random() का उपयोग करके आप 0.1 से अधिक या बराबर तथा 1.0 से कम की श्रेणी में यादृच्छिक संख्याएं उत्पन्न कर सकते हैं
- java.util पैकेज में Random क्लास का उपयोग करना
13) डिफ़ॉल्ट स्विच केस क्या है? उदाहरण दीजिए।
में स्विच कथनडिफ़ॉल्ट केस तब निष्पादित होता है जब कोई अन्य स्विच स्थिति मेल नहीं खाती। डिफ़ॉल्ट केस एक वैकल्पिक केस है। इसे केवल तभी घोषित किया जा सकता है जब अन्य सभी स्विच केस कोड किए गए हों।
नीचे दिए गए उदाहरण में, जब स्कोर 1 या 2 नहीं होता है, तो डिफ़ॉल्ट केस का उपयोग किया जाता है।
public class SwitchExample { public static void main(String args[]) { int score = 4; // Declare the score variable inside the main method 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) इसमें आधार वर्ग क्या है? Java सभी वर्ग किससे व्युत्पन्न होते हैं?
java.lang.object
15) क्या main() विधि का प्रयोग किया जा सकता है? Java क्या कोई डेटा वापस कर सकता है?
जावा में, main() विधि कोई भी डेटा वापस नहीं कर सकती है और इसलिए, इसे हमेशा void रिटर्न प्रकार के साथ घोषित किया जाता है।
16) क्या हैं Java पैकेज? पैकेज का क्या महत्व है?
In Javaपैकेज क्लास और इंटरफेस का एक संग्रह है जो एक दूसरे से संबंधित होने के कारण एक साथ बंडल किए जाते हैं। पैकेज का उपयोग डेवलपर्स को कोड को मॉड्यूलर बनाने और उचित पुनः उपयोग के लिए कोड को समूहीकृत करने में मदद करता है। एक बार जब कोड को पैकेज में पैक कर दिया जाता है, तो इसे अन्य क्लास में आयात किया जा सकता है और उपयोग किया जा सकता है।
17) क्या हम किसी अमूर्त विधि के बिना किसी क्लास को अमूर्त घोषित कर सकते हैं?
हां, हम क्लास के नाम से पहले एब्सट्रैक्ट कीवर्ड का उपयोग करके एब्सट्रैक्ट क्लास बना सकते हैं, भले ही उसमें कोई एब्सट्रैक्ट मेथड न हो। हालाँकि, अगर किसी क्लास में एक भी एब्सट्रैक्ट मेथड है, तो उसे एब्सट्रैक्ट के रूप में घोषित किया जाना चाहिए अन्यथा यह एक त्रुटि देगा।
18) एब्सट्रैक्ट क्लास और इंटरफ़ेस में क्या अंतर है? Java?
अमूर्त वर्ग और इंटरफ़ेस के बीच प्राथमिक अंतर यह है कि इंटरफ़ेस में केवल सार्वजनिक स्थैतिक विधियों की घोषणा हो सकती है, जिसका कोई ठोस कार्यान्वयन नहीं होता, जबकि अमूर्त वर्ग में ठोस कार्यान्वयन के साथ या उसके बिना किसी भी एक्सेस विनिर्देशक (सार्वजनिक, निजी आदि) वाले सदस्य हो सकते हैं।
अमूर्त वर्गों और इंटरफेस के उपयोग में एक और महत्वपूर्ण अंतर यह है कि एक वर्ग जो एक इंटरफेस को कार्यान्वित करता है, उसे इंटरफेस की सभी विधियों को कार्यान्वित करना आवश्यक होता है, जबकि एक वर्ग जो एक अमूर्त वर्ग से विरासत में प्राप्त होता है, उसे अपने सुपर क्लास की सभी विधियों को कार्यान्वित करने की आवश्यकता नहीं होती है।
एक क्लास अनेक इंटरफेस को क्रियान्वित कर सकता है लेकिन वह केवल एक ही अमूर्त क्लास का विस्तार कर सकता है।
19) अमूर्त क्लासों की तुलना में इंटरफेस के प्रदर्शन संबंधी निहितार्थ क्या हैं?
इंटरफ़ेस एब्सट्रैक्ट क्लास की तुलना में प्रदर्शन में धीमे होते हैं क्योंकि इंटरफ़ेस के लिए अतिरिक्त इनडायरेक्शन की आवश्यकता होती है। डेवलपर्स के लिए ध्यान में रखने वाला एक और महत्वपूर्ण कारक यह है कि कोई भी क्लास केवल एक एब्सट्रैक्ट क्लास का विस्तार कर सकता है जबकि एक क्लास कई इंटरफ़ेस को लागू कर सकता है।
इंटरफेस का उपयोग डेवलपर्स पर अतिरिक्त बोझ भी डालता है, क्योंकि जब भी किसी क्लास में इंटरफेस को क्रियान्वित किया जाता है, तो डेवलपर को इंटरफेस की प्रत्येक विधि को क्रियान्वित करने के लिए बाध्य होना पड़ता है।
20) क्या पैकेज आयात करने से उसके उप-पैकेज भी आयात हो जाते हैं? Java?
जावा में, जब कोई पैकेज आयात किया जाता है, तो उसके उप-पैकेज आयात नहीं किए जाते हैं और यदि आवश्यक हो तो डेवलपर को उन्हें अलग से आयात करना पड़ता है।
उदाहरण के लिए, यदि कोई डेवलपर यूनिवर्सिटी पैकेज आयात करता है। *, तो यूनिवर्सिटी नामक पैकेज में सभी क्लास लोड हो जाती हैं, लेकिन सब-पैकेज से कोई क्लास लोड नहीं होती। अपने सब-पैकेज (जैसे डिपार्टमेंट) से क्लास लोड करने के लिए, डेवलपर को इसे स्पष्ट रूप से इस प्रकार आयात करना होगा:
विश्वविद्यालय.विभाग आयात करें.*
21) क्या हम अपनी क्लास की मुख्य विधि को निजी घोषित कर सकते हैं?
जावा में, किसी भी एप्लिकेशन को सही तरीके से चलाने के लिए मुख्य विधि को सार्वजनिक स्थिर होना चाहिए। यदि मुख्य विधि को निजी घोषित किया जाता है, तो डेवलपर को कोई संकलन त्रुटि नहीं मिलेगी, हालांकि, यह निष्पादित नहीं होगी और रनटाइम त्रुटि देगी।
22) हम फ़ंक्शन को मान के बजाय संदर्भ द्वारा तर्क कैसे पास कर सकते हैं?
जावा में, हम फ़ंक्शन को केवल मान द्वारा ही तर्क दे सकते हैं, संदर्भ द्वारा नहीं।
23) जावा में किसी ऑब्जेक्ट को कैसे क्रमबद्ध किया जाता है?
जावा में, किसी ऑब्जेक्ट को सीरियलाइज़ेशन द्वारा बाइट स्ट्रीम में बदलने के लिए, क्लास द्वारा Serializable नाम से एक इंटरफ़ेस लागू किया जाता है। Serializable इंटरफ़ेस को लागू करने वाले क्लास के सभी ऑब्जेक्ट सीरियलाइज़ हो जाते हैं और उनकी स्थिति बाइट स्ट्रीम में सहेजी जाती है।
24) हमें क्रमांकन का उपयोग कब करना चाहिए?
सीरियलाइजेशन का उपयोग तब किया जाता है जब डेटा को नेटवर्क पर प्रसारित करने की आवश्यकता होती है। सीरियलाइजेशन का उपयोग करके, ऑब्जेक्ट की स्थिति को सहेजा जाता है और बाइट स्ट्रीम में परिवर्तित किया जाता है। बाइट स्ट्रीम को नेटवर्क पर स्थानांतरित किया जाता है और ऑब्जेक्ट को गंतव्य पर फिर से बनाया जाता है।
25) क्या यह अनिवार्य है कि ट्राई ब्लॉक के बाद कैच ब्लॉक हो? Java अपवाद हैंडलिंग के लिए?
Try ब्लॉक के बाद या तो Catch ब्लॉक या फिर Finally ब्लॉक या दोनों का होना ज़रूरी है। Try ब्लॉक से फेंके गए किसी भी अपवाद को या तो catch ब्लॉक में पकड़ा जाना चाहिए या फिर कोड गर्भपात से पहले किए जाने वाले किसी भी विशिष्ट कार्य को Finaly ब्लॉक में रखा जाना चाहिए।
Java अनुभवी लोगों के लिए साक्षात्कार प्रश्न और उत्तर
26) क्या अपवाद ब्लॉक में कुछ अपवाद होने पर भी, अंततः अपवाद ब्लॉक को छोड़ने का कोई तरीका है?
यदि Try ब्लॉक में कोई अपवाद उठाया जाता है, तो यदि वह मौजूद है तो नियंत्रण catch ब्लॉक में चला जाता है अन्यथा finally ब्लॉक में चला जाता है। जब कोई अपवाद होता है तो finally ब्लॉक हमेशा निष्पादित होता है और finally ब्लॉक में किसी भी कथन के निष्पादन से बचने का एकमात्र तरीका try ब्लॉक के अंत में कोड की निम्न पंक्ति लिखकर कोड को जबरन निरस्त करना है:
System.exit(0);
27) किसी क्लास का कन्स्ट्रक्टर कब बुलाया जाता है?
प्रत्येक बार जब कोई ऑब्जेक्ट new कीवर्ड के साथ बनाया जाता है तो क्लास का कन्स्ट्रक्टर बुलाया जाता है।
उदाहरण के लिए, निम्नलिखित क्लास में new कीवर्ड का उपयोग करके दो ऑब्जेक्ट बनाए गए हैं और इसलिए, कन्स्ट्रक्टर को दो बार बुलाया गया है।
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) क्या हम किसी क्लास की स्थैतिक विधियों को ओवरराइड कर सकते हैं?
हम स्टैटिक विधियों को ओवरराइड नहीं कर सकते। स्टैटिक विधियाँ किसी क्लास से संबंधित होती हैं, न कि किसी व्यक्तिगत ऑब्जेक्ट से और इन्हें संकलन के समय हल किया जाता है (रनटाइम पर नहीं)। अगर हम स्टैटिक विधि को ओवरराइड करने की कोशिश भी करते हैं, तो हमें कोई संकलन त्रुटि नहीं मिलेगी, न ही कोड चलाते समय ओवरराइडिंग का प्रभाव होगा।
30) नीचे दिए गए उदाहरण में, आउटपुट क्या होगा?
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(); } }
उत्तर:आउटपुट होगा:
उपवर्ग से प्रदर्शित करना
सुपरक्लास से मुद्रण
31) क्या जावा में स्ट्रिंग एक डेटा प्रकार है?
स्ट्रिंग जावा में एक आदिम डेटा प्रकार नहीं है। जब जावा में एक स्ट्रिंग बनाई जाती है, तो यह वास्तव में एक ऑब्जेक्ट होती है Java.Lang.String क्लास जो बनाई जाती है। इस स्ट्रिंग ऑब्जेक्ट के निर्माण के बाद, स्ट्रिंग क्लास की सभी अंतर्निहित विधियों का उपयोग स्ट्रिंग ऑब्जेक्ट पर किया जा सकता है।
32) नीचे दिए गए उदाहरण में, कितने स्ट्रिंग ऑब्जेक्ट बनाए गए हैं?
String s1="I am Java Expert"; String s2="I am C Expert"; String s3="I am Java Expert";
उपरोक्त उदाहरण में, दो वस्तुएँ Java.Lang.String वर्ग बनाए गए हैं। s1 और s3 एक ही ऑब्जेक्ट के संदर्भ हैं।
33) स्ट्रिंग्स क्यों Java अपरिवर्तनीय किसे कहा जाता है?
जावा में, स्ट्रिंग ऑब्जेक्ट्स को अपरिवर्तनीय कहा जाता है क्योंकि एक बार स्ट्रिंग को मान निर्दिष्ट कर दिया गया तो उसे बदला नहीं जा सकता और यदि मान बदल दिया जाता है तो एक नया ऑब्जेक्ट बनाया जाता है।
नीचे दिए गए उदाहरण में, संदर्भ str एक स्ट्रिंग ऑब्जेक्ट को संदर्भित करता है जिसका मान “मान एक” है।
String str="Value One";
जब इसमें कोई नया मान निर्दिष्ट किया जाता है, तो एक नया स्ट्रिंग ऑब्जेक्ट निर्मित हो जाता है और संदर्भ को नए ऑब्जेक्ट में ले जाया जाता है।
str="New Value";
34) ऐरे और वेक्टर में क्या अंतर है?
एक सारणी समान आदिम प्रकार के डेटा को समूहीकृत करती है तथा प्रकृति में स्थिर होती है, जबकि सदिश प्रकृति में गतिशील होते हैं तथा विभिन्न डेटा प्रकारों के डेटा को धारण कर सकते हैं।
35) मल्टी-थ्रेडिंग क्या है?
मल्टी थ्रेडिंग एक प्रोग्रामिंग अवधारणा है जो एक ही प्रोग्राम के भीतर कई कार्यों को एक साथ चलाने के लिए है। थ्रेड्स एक ही प्रोसेस स्टैक को साझा करते हैं और समानांतर रूप से चलते हैं। यह किसी भी प्रोग्राम के प्रदर्शन को बेहतर बनाने में मदद करता है।
36) रननेबल इंटरफ़ेस का उपयोग क्यों किया जाता है? Java?
रननेबल इंटरफ़ेस का उपयोग जावा में बहु-थ्रेडेड अनुप्रयोगों को कार्यान्वित करने के लिए किया जाता है। Java.Lang.Runnable इंटरफ़ेस को बहु-थ्रेडिंग का समर्थन करने के लिए एक वर्ग द्वारा कार्यान्वित किया जाता है।
37) मल्टी-थ्रेडिंग को लागू करने के दो तरीके क्या हैं? Java?
बहु-थ्रेडेड अनुप्रयोगों को विकसित किया जा सकता है Java निम्नलिखित दो में से किसी भी पद्धति का उपयोग करके:
1) प्रयोग करके Java.Lang.Runnable इंटरफ़ेस। क्लासेस मल्टी थ्रेडिंग को सक्षम करने के लिए इस इंटरफ़ेस को लागू करते हैं। इस इंटरफ़ेस में एक Run() विधि है जिसे लागू किया गया है।
2) एक ऐसा वर्ग लिखकर जो विस्तारित हो Java.Lang.थ्रेड वर्ग.
38) जब डेटा में बहुत सारे बदलाव की आवश्यकता हो, तो किसका उपयोग करना प्राथमिकता होनी चाहिए? स्ट्रिंग या स्ट्रिंगBuffer?
चूंकि स्ट्रिंगBuffers प्रकृति में गतिशील हैं और हम स्ट्रिंग के मान बदल सकते हैंBuffer स्ट्रिंग के विपरीत ऑब्जेक्ट्स जो अपरिवर्तनीय है, स्ट्रिंग का उपयोग करना हमेशा एक अच्छा विकल्प हैBuffer जब डेटा में बहुत ज़्यादा बदलाव किया जा रहा हो। अगर हम ऐसे मामले में स्ट्रिंग का इस्तेमाल करते हैं, तो हर डेटा बदलाव के लिए एक नया स्ट्रिंग ऑब्जेक्ट बनाया जाएगा जो एक अतिरिक्त ओवरहेड होगा।
39) स्विच स्टेटमेंट के प्रत्येक मामले में ब्रेक का उपयोग करने का उद्देश्य क्या है?
स्विच में प्रत्येक केस के बाद (अंतिम केस को छोड़कर) ब्रेक का प्रयोग किया जाता है, ताकि वैध केस के बाद कोड ब्रेक हो जाए और आगे के केस में भी प्रवाहित न हो।
यदि प्रत्येक केस के बाद ब्रेक का प्रयोग नहीं किया जाता है, तो वैध केस के बाद के सभी केस भी निष्पादित हो जाएंगे, जिसके परिणामस्वरूप गलत परिणाम प्राप्त होंगे।
40) कचरा संग्रहण कैसे किया जाता है? Java?
जावा में, जब किसी ऑब्जेक्ट को संदर्भित नहीं किया जाता है, कचरा इकठा करना ऐसा होता है और ऑब्जेक्ट अपने आप नष्ट हो जाता है। स्वचालित कचरा संग्रहण के लिए जावा या तो System.gc() विधि या Runtime.gc() विधि को कॉल करता है।
41) हम किसी भी कोड को main method से पहले भी कैसे निष्पादित कर सकते हैं?
यदि हम क्लास के लोड होने के समय ऑब्जेक्ट के निर्माण से पहले किसी भी कथन को निष्पादित करना चाहते हैं, तो हम क्लास में कोड के एक स्थिर ब्लॉक का उपयोग कर सकते हैं। कोड के इस स्थिर ब्लॉक के अंदर कोई भी कथन मुख्य विधि में ऑब्जेक्ट के निर्माण से पहले ही क्लास लोड होने के समय एक बार निष्पादित हो जाएगा।
42) क्या एक वर्ग एक ही समय में सुपर क्लास और सब-क्लास हो सकता है? उदाहरण दीजिए।
यदि वंशानुक्रम का पदानुक्रम प्रयोग किया जाता है, तो एक वर्ग किसी अन्य वर्ग के लिए सुपर क्लास तथा उसी समय किसी अन्य के लिए उप-वर्ग हो सकता है।
नीचे दिए गए उदाहरण में, महाद्वीप वर्ग विश्व वर्ग का उप-वर्ग है और यह देश वर्ग का सुपर क्लास है।
public class world { .......... } public class continenet extends world { ............ } public class country extends continent { ...................... }
43) यदि क्लास में कोई कन्स्ट्रक्टर परिभाषित नहीं है तो क्लास के ऑब्जेक्ट कैसे बनाए जाते हैं?
भले ही जावा क्लास में कोई स्पष्ट कंस्ट्रक्टर परिभाषित न हो, ऑब्जेक्ट सफलतापूर्वक बनाए जाते हैं क्योंकि ऑब्जेक्ट निर्माण के लिए डिफ़ॉल्ट कंस्ट्रक्टर का उपयोग किया जाता है। इस कंस्ट्रक्टर में कोई पैरामीटर नहीं है।
44) मल्टी-थ्रेडिंग में हम यह कैसे सुनिश्चित कर सकते हैं कि एक संसाधन का उपयोग एक साथ कई थ्रेड्स द्वारा नहीं किया जाता है?
मल्टी-थ्रेडिंग में, कई थ्रेड्स के बीच साझा किए जाने वाले संसाधनों तक पहुंच को सिंक्रोनाइज़ेशन की अवधारणा का उपयोग करके नियंत्रित किया जा सकता है। सिंक्रनाइज़ कीवर्ड, हम यह सुनिश्चित कर सकते हैं कि एक समय में केवल एक थ्रेड ही साझा संसाधन का उपयोग कर सकता है और अन्य लोग संसाधन पर तभी नियंत्रण प्राप्त कर सकते हैं जब वह इसका उपयोग करने वाले दूसरे थ्रेड से मुक्त हो जाए।
45) क्या हम किसी ऑब्जेक्ट के लिए क्लास के कंस्ट्रक्टर को एक से अधिक बार कॉल कर सकते हैं?
जब हम new कीवर्ड का उपयोग करके कोई ऑब्जेक्ट बनाते हैं तो कंस्ट्रक्टर अपने आप कॉल हो जाता है। ऑब्जेक्ट निर्माण के समय इसे केवल एक बार ही कॉल किया जाता है और इसलिए, हम ऑब्जेक्ट के निर्माण के बाद कंस्ट्रक्टर को फिर से नहीं बुला सकते हैं।
46) classA और classB नाम की दो क्लास हैं। दोनों क्लास एक ही पैकेज में हैं। क्या 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) हम जावा ऑब्जेक्ट की प्रतिलिपि कैसे बना सकते हैं?
हम किसी ऑब्जेक्ट की प्रतिलिपि बनाने के लिए क्लोनिंग की अवधारणा का उपयोग कर सकते हैं। क्लोन का उपयोग करके, हम किसी ऑब्जेक्ट की वास्तविक स्थिति के साथ प्रतिलिपियाँ बनाते हैं।
Clone() Cloneable इंटरफ़ेस की एक विधि है और इसलिए, ऑब्जेक्ट प्रतिलिपियाँ बनाने के लिए Cloneable इंटरफ़ेस को कार्यान्वित करने की आवश्यकता है।
49) उत्तराधिकार का उपयोग करने का क्या लाभ है?
इनहेरिटेंस का उपयोग करने का मुख्य लाभ कोड की पुनः प्रयोज्यता है क्योंकि इनहेरिटेंस उप-वर्गों को अपने सुपर क्लास के कोड का पुनः उपयोग करने में सक्षम बनाता है। बहुरूपता (विस्तारशीलता) एक और बड़ा लाभ है जो मौजूदा व्युत्पन्न वर्गों को प्रभावित किए बिना नई कार्यक्षमता को पेश करने की अनुमति देता है।
50) किसी क्लास के वेरिएबल्स और मेथड्स के लिए डिफ़ॉल्ट एक्सेस स्पेसिफायर क्या है?
चरों और विधियों के लिए डिफ़ॉल्ट एक्सेस विनिर्देशक पैकेज संरक्षित है, अर्थात चर और वर्ग किसी भी अन्य वर्ग के लिए उपलब्ध हैं, लेकिन उसी पैकेज में, पैकेज के बाहर नहीं।
51) पॉइंटर्स के उपयोग का एक उदाहरण दीजिए। Java वर्ग.
इसमें कोई संकेत नहीं हैं Java. इसलिए हम पॉइंटर्स की अवधारणा का उपयोग नहीं कर सकते Java.
52) हम किसी वर्ग के लिए वंशानुक्रम को कैसे प्रतिबंधित कर सकते हैं ताकि कोई भी वर्ग उससे वंशानुक्रम में न आ सके?
यदि हम चाहते हैं कि किसी वर्ग को किसी भी वर्ग द्वारा आगे विस्तारित न किया जाए, तो हम कीवर्ड का उपयोग कर सकते हैं अंतिम वर्ग नाम के साथ.
निम्नलिखित उदाहरण में, स्टोन क्लास अंतिम है और इसे बढ़ाया नहीं जा सकता
public Final Class Stone { // Class methods and Variables }
53) संरक्षित एक्सेस विनिर्देशक का एक्सेस दायरा क्या है?
जब किसी विधि या चर को संरक्षित पहुँच विनिर्देशक के साथ घोषित किया जाता है, तो वह उसी वर्ग, उसी पैकेज के किसी अन्य वर्ग तथा उप-वर्ग में पहुँच योग्य हो जाता है।
संशोधक | वर्ग | पैकेज | उपवर्ग | विश्व |
---|---|---|---|---|
सार्वजनिक | Y | Y | Y | Y |
संरक्षित | Y | Y | Y | N |
कोई संशोधक नहीं | Y | Y | N | N |
निजी | Y | N | N | N |
54) स्टैक और क्यू में क्या अंतर है?
स्टैक और क्यू दोनों का उपयोग डेटा के संग्रह के लिए प्लेसहोल्डर के रूप में किया जाता है। स्टैक और क्यू के बीच प्राथमिक अंतर यह है कि स्टैक लास्ट इन फर्स्ट आउट (LIFO) सिद्धांत पर आधारित है जबकि क्यू FIFO (फर्स्ट इन फर्स्ट आउट) सिद्धांत पर आधारित है।
55) जावा में, हम चरों के क्रमांकन को कैसे अस्वीकार कर सकते हैं?
यदि हम चाहते हैं कि किसी वर्ग के कुछ चरों को क्रमबद्ध न किया जाए, तो हम कीवर्ड का उपयोग कर सकते हैं क्षणिक उन्हें घोषित करते समय। उदाहरण के लिए, नीचे दिया गया चर trans_var एक क्षणिक चर है और इसे क्रमबद्ध नहीं किया जा सकता है:
public class transientExample { private transient trans_var; // rest of the code }
56) हम आदिम डेटा प्रकारों को ऑब्जेक्ट के रूप में कैसे उपयोग कर सकते हैं?
int जैसे आदिम डेटा प्रकारों को उनके संबंधित रैपर क्लास के उपयोग द्वारा ऑब्जेक्ट के रूप में नियंत्रित किया जा सकता है। उदाहरण के लिए, Integer आदिम डेटा प्रकार int के लिए एक रैपर क्लास है। हम किसी अन्य ऑब्जेक्ट की तरह ही रैपर क्लास पर विभिन्न विधियों को लागू कर सकते हैं।
57) संकलन समय पर किस प्रकार के अपवाद पकड़े जाते हैं?
प्रोग्राम संकलन के समय जाँचे गए अपवादों को पकड़ा जा सकता है। कोड को सफलतापूर्वक संकलित करने के लिए कोड में try catch ब्लॉक का उपयोग करके जाँचे गए अपवादों को नियंत्रित किया जाना चाहिए।
58) थ्रेड की विभिन्न अवस्थाओं का वर्णन करें।
एक धागा Java निम्नलिखित में से किसी भी स्थिति में हो सकता है:
- तैयार: जब कोई थ्रेड बनाया जाता है, तो वह तैयार अवस्था में होता है।
- चल रहा है: वर्तमान में निष्पादित किया जा रहा थ्रेड चालू अवस्था में है।
- प्रतीक्षा: एक थ्रेड जो किसी अन्य थ्रेड द्वारा कुछ संसाधनों को मुक्त करने की प्रतीक्षा कर रहा है, प्रतीक्षा अवस्था में है।
- मृत: जो थ्रेड निष्पादन के बाद मृत हो गया है वह मृत अवस्था में है।
59) क्या हम किसी क्लास के डिफ़ॉल्ट कंस्ट्रक्टर का उपयोग कर सकते हैं, भले ही एक स्पष्ट कंस्ट्रक्टर परिभाषित किया गया हो?
Java यदि कोई स्पष्ट कन्स्ट्रक्टर परिभाषित नहीं है तो डिफ़ॉल्ट नो आर्गुमेंट कन्स्ट्रक्टर प्रदान करता है Java क्लास में परिभाषित कन्स्ट्रक्टर का उपयोग किया जा सकता है। लेकिन यदि कोई स्पष्ट कन्स्ट्रक्टर परिभाषित किया गया है, तो डिफ़ॉल्ट कन्स्ट्रक्टर को लागू नहीं किया जा सकता है और डेवलपर केवल उन कन्स्ट्रक्टर का उपयोग कर सकता है जो क्लास में परिभाषित हैं।
60) क्या हम समान विधि नाम और तर्कों लेकिन विभिन्न रिटर्न प्रकारों का उपयोग करके किसी विधि को ओवरराइड कर सकते हैं?
विधि ओवरराइडिंग की मूल शर्त यह है कि विधि का नाम, तर्क और साथ ही रिटर्न प्रकार बिल्कुल वैसा ही होना चाहिए जैसा कि ओवरराइड की जा रही विधि का है। इसलिए किसी भिन्न रिटर्न प्रकार का उपयोग करने से विधि ओवरराइड नहीं होती है।
61) निम्नलिखित कोड का आउटपुट क्या होगा?
public class operatorExample { public static void main(String args[]) { int x = 4; system.out.println(x++); } }
इस मामले में पोस्टफ़िक्स ++ ऑपरेटर का उपयोग किया जाता है जो पहले मान लौटाता है और फिर बढ़ाता है। इसलिए इसका आउटपुट 4 होगा।
61) एक व्यक्ति कहता है कि उसने बिना main method के भी java class को सफलतापूर्वक संकलित किया? क्या यह संभव है?
मुख्य विधि एक प्रवेश बिंदु है Java क्लास और प्रोग्राम के निष्पादन के लिए आवश्यक है; क्लास सफलतापूर्वक संकलित हो जाती है, भले ही इसमें मुख्य विधि न हो। हालाँकि इसे चलाया नहीं जा सकता।
62) क्या हम स्थैतिक विधि के अंदर से एक गैर-स्थैतिक विधि को कॉल कर सकते हैं?
नॉन-स्टेटिक मेथड क्लास के ऑब्जेक्ट के स्वामित्व में होते हैं और इनका ऑब्जेक्ट लेवल स्कोप होता है और स्टैटिक ब्लॉक (जैसे स्टैटिक मेन मेथड से) से नॉन-स्टेटिक मेथड को कॉल करने के लिए, पहले क्लास का ऑब्जेक्ट बनाना पड़ता है। फिर ऑब्जेक्ट रेफरेंस का उपयोग करके, इन मेथड को इनवोक किया जा सकता है।
63) किसी भी प्रोग्राम को चलाने के लिए कौन से दो पर्यावरण चर सेट किए जाने चाहिए? Java कार्यक्रम?
Java किसी मशीन में प्रोग्राम केवल तभी निष्पादित किए जा सकते हैं जब निम्नलिखित दो पर्यावरण चर ठीक से सेट किए गए हों:
- पैठ चर
- क्लासपथ चर
64) क्या चर का उपयोग किया जा सकता है? Java आरंभीकरण के बिना?
In Javaयदि किसी चर को किसी मान्य मान द्वारा पूर्व आरंभीकरण के बिना कोड में उपयोग किया जाता है, तो प्रोग्राम संकलित नहीं होता है और एक त्रुटि देता है क्योंकि प्रोग्राम में चर को कोई डिफ़ॉल्ट मान निर्दिष्ट नहीं किया गया है। Java.
65) क्या एक कक्षा में Java क्या यह एक से अधिक वर्गों से विरासत में प्राप्त किया जा सकता है?
In Java, एक वर्ग को केवल एक वर्ग से प्राप्त किया जा सकता है, न कि कई वर्गों से। एकाधिक वंशानुक्रम इसके द्वारा समर्थित नहीं है Java.
66) क्या किसी कन्स्ट्रक्टर का नाम क्लास के नाम से अलग हो सकता है? Java?
कंस्ट्रक्टर इन Java इसका नाम क्लास के नाम के समान होना चाहिए और यदि नाम भिन्न है, तो यह कन्स्ट्रक्टर के रूप में कार्य नहीं करता है और कम्पाइलर इसे एक सामान्य विधि के रूप में समझता है।
67) राउंड(3.7) और सील(3.7) का आउटपुट क्या होगा?
Round(3.7) 4 लौटाता है और Ceil(3.7) 4 लौटाता है.
68) क्या हम goto का उपयोग कर सकते हैं? Java किसी विशेष लाइन पर जाने के लिए?
In Java, इसमें goto कीवर्ड नहीं है और जावा किसी विशेष लेबल वाली लाइन पर जाने की इस सुविधा का समर्थन नहीं करता है।
69) क्या एक मृत धागे को फिर से शुरू किया जा सकता है?
जावा में, जो थ्रेड मृत अवस्था में है उसे फिर से शुरू नहीं किया जा सकता। मृत थ्रेड को पुनः आरंभ करने का कोई तरीका नहीं है।
70) क्या निम्नलिखित वर्ग घोषणा सही है?
public abstract final class testClass { // Class methods and variables }
उत्तर: उपरोक्त वर्ग घोषणा गलत है क्योंकि अमूर्त वर्ग को अंतिम घोषित नहीं किया जा सकता है।
71) क्या प्रत्येक मशीन पर JDK चलाना आवश्यक है? Java कार्यक्रम?
JDK विकास किट है Java और केवल विकास के लिए और चलाने के लिए आवश्यक है Java किसी मशीन पर प्रोग्राम चलाने के लिए JDK की आवश्यकता नहीं होती। केवल JRE की आवश्यकता होती है।
72) equals विधि और == ऑपरेटर द्वारा की गई तुलना में क्या अंतर है?
In Javaequals() विधि का उपयोग दो स्ट्रिंग ऑब्जेक्ट्स की सामग्री की तुलना करने के लिए किया जाता है और यदि दोनों का मान समान है तो true लौटाता है जबकि == ऑपरेटर दो स्ट्रिंग ऑब्जेक्ट्स के संदर्भों की तुलना करता है।
निम्न उदाहरण में, equals() सत्य लौटाता है क्योंकि दो स्ट्रिंग ऑब्जेक्ट्स के मान समान हैं। हालाँकि == ऑपरेटर असत्य लौटाता है क्योंकि दोनों स्ट्रिंग ऑब्जेक्ट्स अलग-अलग ऑब्जेक्ट्स को संदर्भित कर रहे हैं:
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 true System.out.println("str1 and str2 are equal in terms of values"); } if (str1 == str2) { //This condition is true System.out.println("Both strings are referencing same object"); } else { // This condition is NOT true System.out.println("Both strings are referencing different objects"); } } }
73) क्या किसी विधि को परिभाषित करना संभव है? Java क्लास में इसका कार्यान्वयन प्रदान करना है, लेकिन सी जैसी किसी अन्य भाषा के कोड में इसका कार्यान्वयन प्रदान करना है?
हां, हम नेटिव विधियों का उपयोग करके ऐसा कर सकते हैं। नेटिव विधि आधारित विकास के मामले में, हम अपने में सार्वजनिक स्थैतिक विधियों को परिभाषित करते हैं। Java क्लास को बिना क्रियान्वयन के चलाया जाता है और फिर क्रियान्वयन अलग से किसी अन्य भाषा जैसे C में किया जाता है।
74) डिस्ट्रक्टर्स को कैसे परिभाषित किया जाता है? Java?
In Java, वर्ग में कोई विध्वंसक परिभाषित नहीं है क्योंकि ऐसा करने की कोई आवश्यकता नहीं है। Java इसका अपना कचरा संग्रहण तंत्र है जो संदर्भित न होने पर वस्तुओं को नष्ट करके स्वचालित रूप से कार्य करता है।
Java 5+ वर्ष के अनुभव के लिए साक्षात्कार प्रश्न और उत्तर
75) क्या कोई चर एक ही समय में स्थानीय और स्थिर हो सकता है?
नहीं, एक चर एक ही समय में स्थिर और स्थानीय दोनों नहीं हो सकता। स्थानीय चर को स्थिर के रूप में परिभाषित करने पर संकलन त्रुटि आती है।
76) क्या हम इंटरफ़ेस में स्थैतिक विधियाँ रख सकते हैं?
स्टैटिक विधियों को किसी भी क्लास में ओवरराइड नहीं किया जा सकता है जबकि इंटरफ़ेस में कोई भी विधि डिफ़ॉल्ट रूप से अमूर्त होती है और इंटरफ़ेस को लागू करने वाली कक्षाओं में लागू की जानी चाहिए। इसलिए इंटरफ़ेस में स्टैटिक विधियों का होना कोई मतलब नहीं रखता है। Java.
77) क्या किसी इंटरफ़ेस को कार्यान्वित करने वाले वर्ग में, हम इंटरफ़ेस में परिभाषित किसी भी चर का मान बदल सकते हैं?
नहीं, हम कार्यान्वयन वर्ग में किसी इंटरफ़ेस के किसी भी चर का मान नहीं बदल सकते क्योंकि इंटरफ़ेस में परिभाषित सभी चर डिफ़ॉल्ट रूप से सार्वजनिक, स्थिर और अंतिम होते हैं और अंतिम चर स्थिरांक की तरह होते हैं जिन्हें बाद में बदला नहीं जा सकता।
78) क्या यह कहना सही है कि कचरा संग्रहण सुविधा के कारण Java, एक जावा प्रोग्राम कभी भी मेमोरी से बाहर नहीं जाता है?
भले ही स्वचालित कचरा संग्रहण द्वारा प्रदान किया गया है Java, यह सुनिश्चित नहीं करता है कि Java कार्यक्रम मेमोरी से बाहर नहीं जाएगा क्योंकि ऐसी संभावना है कि इसका निर्माण हो Java कचरा संग्रहण की तुलना में ऑब्जेक्ट्स का संग्रहण तेज गति से किया जा रहा है, जिसके परिणामस्वरूप सभी उपलब्ध मेमोरी संसाधन भर जाते हैं।
इसलिए, कचरा संग्रहण किसी प्रोग्राम के मेमोरी से बाहर जाने की संभावना को कम करने में मदद करता है, लेकिन यह इसकी गारंटी नहीं देता।
79) क्या हम मुख्य विधि के लिए void के अलावा कोई अन्य रिटर्न प्रकार रख सकते हैं?
नहीं, Java प्रोग्राम को सफलतापूर्वक निष्पादित करने के लिए क्लास main विधि में केवल void रिटर्न प्रकार हो सकता है।
फिर भी, यदि आपको मुख्य विधि के पूरा होने पर कोई मान वापस करना ही है, तो आप System.exit(int status) का उपयोग कर सकते हैं
80) मैं किसी वस्तु को कचरा एकत्रित करने के बाद पुनः उपयोग करना चाहता हूँ। यह कैसे संभव है?
एक बार जब कोई ऑब्जेक्ट कचरा संग्रहकर्ता द्वारा नष्ट कर दिया जाता है, तो वह अब हीप पर मौजूद नहीं रहता है और उसे फिर से एक्सेस नहीं किया जा सकता है। इसे फिर से संदर्भित करने का कोई तरीका नहीं है।
में 81 Java थ्रेड प्रोग्रामिंग में, कौन सी विधि सभी थ्रेड्स के लिए अनिवार्य कार्यान्वयन है?
Run() Runnable इंटरफ़ेस की एक विधि है जिसे सभी थ्रेड्स द्वारा कार्यान्वित किया जाना चाहिए।
82) मैं अपने प्रोग्राम में डेटाबेस कनेक्शन को नियंत्रित करना चाहता हूँ और चाहता हूँ कि एक समय में केवल एक थ्रेड ही डेटाबेस कनेक्शन बना सके। मैं इस तर्क को कैसे लागू कर सकता हूँ?
उत्तर: इसे सिंक्रोनाइजेशन की अवधारणा के उपयोग से लागू किया जा सकता है। डेटाबेस से संबंधित कोड को एक विधि में रखा जा सकता है जो सिंक्रनाइज़ कीवर्ड का उपयोग करें ताकि एक समय में केवल एक थ्रेड ही इसे एक्सेस कर सके।
83) प्रोग्रामर द्वारा मैन्युअल रूप से अपवाद कैसे फेंका जा सकता है?
कोड के किसी ब्लॉक में मैन्युअल रूप से अपवाद फेंकने के लिए, फेंकना कीवर्ड का उपयोग किया जाता है। फिर इस अपवाद को पकड़ा जाता है और कैच ब्लॉक में संभाला जाता है।
public void topMethod() { try { excMethod(); } catch (ManualException e) {} } public void excMethod { String name = null; if (name == null) { throw (new ManualException("Exception thrown manually "); } }
84) मैं चाहता हूँ कि मेरी क्लास इस तरह से विकसित हो कि कोई भी दूसरी क्लास (यहाँ तक कि व्युत्पन्न क्लास भी) उसकी ऑब्जेक्ट न बना सके। मैं ऐसा कैसे कर सकता हूँ?
यदि हम किसी क्लास के कन्स्ट्रक्टर को निजी घोषित करते हैं, तो यह किसी अन्य क्लास द्वारा सुलभ नहीं होगा और इसलिए, कोई अन्य क्लास इसे इंस्टैंसिएट नहीं कर पाएगा और इसके ऑब्जेक्ट का निर्माण केवल उसी तक सीमित रहेगा।
85) वस्तुओं को कैसे संग्रहीत किया जाता है? Java?
जावा में, जब कोई ऑब्जेक्ट बनाया जाता है तो उसे हीप से मेमोरी स्पेस मिलता है। जब कोई ऑब्जेक्ट कचरा संग्रहकर्ता द्वारा नष्ट कर दिया जाता है, तो हीप से उसे आवंटित किया गया स्थान फिर से हीप को आवंटित कर दिया जाता है और किसी भी नए ऑब्जेक्ट के लिए उपलब्ध हो जाता है।
86) हम हीप पर किसी ऑब्जेक्ट का वास्तविक आकार कैसे ज्ञात कर सकते हैं?
जावा में, हीप पर किसी ऑब्जेक्ट का सटीक आकार जानने का कोई तरीका नहीं है।
87) निम्नलिखित में से किस क्लास को अधिक मेमोरी आवंटित होगी?
वर्ग A: तीन विधियाँ, चार चर, कोई ऑब्जेक्ट नहीं
वर्ग बी: पांच विधियां, तीन चर, कोई ऑब्जेक्ट नहीं
ऑब्जेक्ट के निर्माण से पहले मेमोरी आवंटित नहीं की जाती है। चूंकि दोनों क्लास के लिए कोई ऑब्जेक्ट नहीं बनाया गया है, इसलिए किसी भी क्लास के लिए हीप पर कोई मेमोरी आवंटित नहीं की जाती है।
88) यदि किसी प्रोग्राम में अपवाद को नियंत्रित नहीं किया जाता है तो क्या होता है?
यदि प्रोग्राम में try catch ब्लॉक का उपयोग करके अपवाद को नियंत्रित नहीं किया जाता है, तो प्रोग्राम निरस्त हो जाता है और अपवाद उत्पन्न करने वाले कथन के बाद कोई कथन निष्पादित नहीं होता है।
89) मेरे पास एक क्लास में कई कन्स्ट्रक्टर परिभाषित हैं। क्या किसी कन्स्ट्रक्टर को दूसरे कन्स्ट्रक्टर की बॉडी से कॉल करना संभव है?
यदि किसी क्लास में एक से अधिक कन्स्ट्रक्टर हैं, तो किसी एक कन्स्ट्रक्टर को दूसरे कन्स्ट्रक्टर के बॉडी से कॉल करना संभव है। यह().
90) अनाम वर्ग से क्या तात्पर्य है?
अनाम क्लास वह क्लास है जिसे new कीवर्ड का उपयोग करके कोड की एक पंक्ति में बिना किसी नाम के परिभाषित किया जाता है।
उदाहरण के लिए, नीचे दिए गए कोड में हमने कोड की एक पंक्ति में एक अनाम वर्ग परिभाषित किया है:
public java.util.Enumeration testMethod() { return new java.util.Enumeration() { @Override public boolean hasMoreElements() { // TODO Auto-generated method stub return false; } @Override public Object nextElement() { // TODO Auto-generated method stub return null; } }
91) क्या किसी ऐरे की घोषणा के बाद उसका आकार बढ़ाने का कोई तरीका है?
ऐरे स्थिर होते हैं और एक बार जब हम इसका आकार निर्दिष्ट कर देते हैं, तो हम इसे बदल नहीं सकते। यदि हम ऐसे संग्रह का उपयोग करना चाहते हैं जहाँ हमें आकार (आइटम की संख्या) में परिवर्तन की आवश्यकता हो सकती है, तो हमें ऐरे के बजाय वेक्टर को प्राथमिकता देनी चाहिए।
92) यदि किसी एप्लीकेशन में एकाधिक क्लासेस हैं, तो क्या एक से अधिक क्लास में मुख्य विधि रखना ठीक है?
यदि किसी जावा अनुप्रयोग में एक से अधिक क्लासों में मुख्य विधि है, तो इससे कोई समस्या नहीं होगी क्योंकि किसी भी अनुप्रयोग के लिए प्रवेश बिंदु एक विशिष्ट क्लास होगा और कोड केवल उस विशेष क्लास की मुख्य विधि से शुरू होगा।
93) मैं बाद में उपयोग के लिए ऑब्जेक्ट्स का डेटा सुरक्षित रखना चाहता हूँ। ऐसा करने का सबसे अच्छा तरीका क्या है?
भविष्य में उपयोग के लिए डेटा को सुरक्षित रखने का सबसे अच्छा तरीका क्रमबद्धता की अवधारणा का उपयोग करना है।
94) स्थानीय वर्ग क्या है? Java?
In Javaयदि हम किसी विशेष ब्लॉक के अंदर कोई नया क्लास परिभाषित करते हैं, तो उसे स्थानीय क्लास कहा जाता है। इस तरह के क्लास का दायरा स्थानीय होता है और यह उस ब्लॉक के बाहर उपयोग करने योग्य नहीं होता है जहाँ इसे परिभाषित किया गया है।
९५) स्ट्रिंग और स्ट्रिंगBuffer दोनों स्ट्रिंग ऑब्जेक्ट्स का प्रतिनिधित्व करते हैं। क्या हम स्ट्रिंग और स्ट्रिंग की तुलना कर सकते हैंBuffer in Java?
हालाँकि स्ट्रिंग और स्ट्रिंगBuffer दोनों स्ट्रिंग ऑब्जेक्ट्स का प्रतिनिधित्व करते हैं, हम उनकी एक दूसरे के साथ तुलना नहीं कर सकते हैं और यदि हम उनकी तुलना करने की कोशिश करते हैं, तो हमें एक त्रुटि मिलती है।
96) कौन सा एपीआई द्वारा प्रदान किया जाता है? Java वस्तुओं के सेट पर संचालन के लिए?
Java एक संग्रह एपीआई प्रदान करता है जो कई उपयोगी विधियाँ प्रदान करता है जिन्हें ऑब्जेक्ट के एक सेट पर लागू किया जा सकता है। संग्रह एपीआई द्वारा प्रदान की जाने वाली कुछ महत्वपूर्ण कक्षाओं में ArrayList, HashMap, TreeSet और TreeMap शामिल हैं।
97) क्या हम टाइप कास्टिंग के साथ किसी अन्य प्रकार को बूलियन प्रकार में कास्ट कर सकते हैं?
नहीं, हम न तो किसी अन्य आदिम प्रकार को बूलियन डेटा प्रकार में बदल सकते हैं और न ही बूलियन डेटा प्रकार को किसी अन्य आदिम डेटा प्रकार में बदल सकते हैं।
98) क्या हम ओवरराइड करते समय विधियों के लिए विभिन्न रिटर्न प्रकारों का उपयोग कर सकते हैं?
विधि ओवरराइडिंग की मूल आवश्यकता Java यह है कि ओवरराइड की गई विधि का नाम और पैरामीटर समान होना चाहिए। लेकिन एक विधि को एक अलग रिटर्न प्रकार के साथ ओवरराइड किया जा सकता है जब तक कि नया रिटर्न प्रकार मूल को विस्तारित करता है।
उदाहरण के लिए, विधि एक संदर्भ प्रकार लौटा रही है।
Class B extends A { A method(int x) { //original method } B method(int x) { //overridden method } }
99) सभी अपवाद वर्गों का आधार वर्ग क्या है?
In Java, Java.lang.Throwable
सभी अपवाद वर्गों का सुपर क्लास है और सभी अपवाद वर्ग इस आधार वर्ग से व्युत्पन्न होते हैं।
100) वंशानुक्रम में कंस्ट्रक्टर्स को बुलाने का क्रम क्या है?
वंशानुक्रम के मामले में, जब किसी व्युत्पन्न वर्ग का नया ऑब्जेक्ट बनाया जाता है, तो सबसे पहले सुपर क्लास का निर्माता बुलाया जाता है, और फिर व्युत्पन्न वर्ग का निर्माता बुलाया जाता है।
अपनी नौकरी के लिए इंटरव्यू की तैयारी करें!!! Java ट्यूटोरियल बेहतर तरीके से तैयार रहना।
यह विस्तृत Java मॉक टेस्ट क्विज़ आपको संदेहों को दूर करने में मदद करेगा Java साक्षात्कार के प्रश्न और साक्षात्कार को क्रैक करने में भी आपकी मदद करेंगे।
इन Java और Java 8 साक्षात्कार प्रश्न आपके मौखिक परीक्षण में भी मदद मिलेगी