जावा इंटरव्यू कैसे पास करें: शीर्ष प्रश्न और उत्तर

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

जावा साक्षात्कार कैसे पास करें: उदाहरणों के साथ शीर्ष प्रश्नों का विश्लेषण



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



1. जावा कोर और OOP के मूल सिद्धांतों पर प्रश्न



कोई भी साक्षात्कार बुनियादी सिद्धांतों से शुरू होता है। इंटरव्यूअर जांचता है कि आप ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग प्रतिमान और भाषा की संरचना को कितनी गहराई से समझते हैं। यहाँ इस श्रेणी के शीर्ष 3 प्रश्न हैं।



एब्स्ट्रैक्ट क्लास इंटरफ़ेस से कैसे भिन्न है?

यह एक क्लासिक प्रश्न है। एब्स्ट्रैक्ट क्लास में एब्स्ट्रैक्ट और सामान्य दोनों विधियाँ कार्यान्वयन के साथ-साथ फ़ील्ड और कंस्ट्रक्टर भी हो सकते हैं। इंटरफ़ेस (जावा 8 से पहले) में केवल विधि हस्ताक्षर होते थे। जावा 8 से शुरू करके, इंटरफ़ेस में default और static विधियाँ आईं, और जावा 9 से private विधियाँ। मुख्य अंतर: आप केवल एक एब्स्ट्रैक्ट क्लास को इनहेरिट कर सकते हैं, लेकिन कई इंटरफ़ेस को इम्प्लीमेंट कर सकते हैं।



// एब्स्ट्रैक्ट क्लासabstract class Animal {    String name;    abstract void sound();    void sleep() { System.out.println("Zzz"); }}

// इंटरफ़ेसinterface Flyable { void fly(); default void glide() { System.out.println("Gliding..."); }}

class Bird extends Animal implements Flyable { @Override void sound() { System.out.println("Chirp"); } @Override public void fly() { System.out.println("Flying"); }}


पॉलीमॉर्फिज़्म क्या है? एक उदाहरण दें।

पॉलीमॉर्फिज़्म किसी ऑब्जेक्ट की कई रूप धारण करने की क्षमता है। जावा में इसे इनहेरिटेंस और इंटरफ़ेस के माध्यम से कार्यान्वित किया जाता है। सबसे आम उदाहरण विधियों का ओवरराइडिंग है।



List<String> list = new ArrayList<>();// संदर्भ List प्रकार का है, और ऑब्जेक्ट ArrayList है।// add() विधि ArrayList के कार्यान्वयन से कॉल की जाएगी।list.add("पॉलीमॉर्फिज़्म का उदाहरण");


==, equals() से कैसे भिन्न है?

== संदर्भों (मेमोरी में पतों) की तुलना करता है, जबकि equals() तार्किक सामग्री की तुलना करता है। रैपर क्लासेस (Integer, String) के लिए equals() ओवरराइड किया गया है और मानों की तुलना करता है। हालांकि, Integer के लिए -128 से 127 तक कैश है, इसलिए == अप्रत्याशित रूप से काम कर सकता है।



Integer a = 100;Integer b = 100;System.out.println(a == b); // true (दोनों कैश से)

Integer c = 200;Integer d = 200;System.out.println(c == d); // false (अलग-अलग ऑब्जेक्ट)System.out.println(c.equals(d)); // true


2. जावा कलेक्शन: डेटा संरचनाएँ और एल्गोरिदम



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



HashMap कैसे काम करता है? हैशिंग कैसे काम करती है?

HashMap की-वैल्यू पेयर्स को "बकेट" (buckets) की एक सरणी में संग्रहीत करता है। तत्व जोड़ते समय, कुंजी का हैश-कोड गणना की जाती है, और उसके आधार पर बकेट नंबर निर्धारित किया जाता है। यदि बकेट में पहले से तत्व हैं, तो लिंक्ड लिस्ट या ट्री (यदि 8 से अधिक तत्व हैं) का उपयोग किया जाता है। जावा 8+ में, टकराव (collisions) के मामले में अनुकूलन के लिए, लिस्ट को रेड-ब्लैक ट्री में बदल दिया जाता है।



Map<String, Integer> map = new HashMap<>();map.put("Java", 1);map.put("Python", 2);// यदि "Java" और "Python" का hashCode समान है - तो टकराव होगा।System.out.println(map.get("Java")); // औसतन O(1)


ArrayList और LinkedList में क्या अंतर है? कब किसका उपयोग करें?

ArrayList डायनामिक ऐरे पर आधारित है। इंडेक्स द्वारा एक्सेस O(1) है, बीच में इंसर्शन/डिलीट O(n) है। LinkedList डबल लिंक्ड लिस्ट पर आधारित है। बीच में इंसर्शन/डिलीट O(1) है, लेकिन इंडेक्स द्वारा एक्सेस O(n) है। ArrayList का उपयोग करें जब आपको अक्सर तत्वों तक पहुँचने की आवश्यकता होती है, और LinkedList जब आपको अक्सर तत्वों को जोड़ने/हटाने की आवश्यकता होती है, विशेष रूप से सूची की शुरुआत या मध्य में।

ब्लॉग

पुस्तक अनुशंसाएँ