जब भी आपको वर्तमान कार्यक्रम में बाहरी कक्षाओं/इंटरफेस (या तो उपयोगकर्ता परिभाषित या, अंतर्निहित) का उपयोग करने की आवश्यकता होती है, तो आपको उन कक्षाओं को अपने वर्तमान कार्यक्रम में आयात कीवर्ड का उपयोग करके आयात करने की आवश्यकता होती है।
लेकिन, किसी भी वर्ग को आयात करते समय -
-
यदि आपके द्वारा आयात किए जा रहे वर्ग/इंटरफ़ेस का पथ JVM के लिए उपलब्ध नहीं है।
-
यदि आपके द्वारा आयात विवरण में उल्लिखित पूर्ण वर्ग नाम सटीक नहीं है (पैकेज और वर्ग के नाम सहित)।
-
यदि आपने उपयोग की गई कक्षा/इंटरफ़ेस को आयात किया है।
आपको एक अपवाद मिलेगा जिसमें लिखा होगा “प्रतीक नहीं ढूंढ सकता ……”
उदाहरण
निम्नलिखित उदाहरण में हम की-बोर्ड (System.in) से उपयोगकर्ता के नाम का प्रतिनिधित्व करने वाले एक स्ट्रिंग मान को पढ़ने का प्रयास कर रहे हैं। इसके लिए हम Java.Util . के स्कैनर वर्ग का उपयोग कर रहे हैं पैकेज।
पब्लिक क्लास ReadingdData {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग args []) { System.out.println ("अपना नाम दर्ज करें:"); स्कैनर एससी =नया स्कैनर (System.in); स्ट्रिंग नाम =sc.next (); System.out.println ("हैलो" + नाम); }}
संकलन समय त्रुटि
चूंकि हम अपने प्रोग्राम में स्कैनर नाम की एक क्लास का उपयोग कर रहे हैं और इसे अपने प्रोग्राम में इम्पोर्ट नहीं किया है। निष्पादित करने पर, यह प्रोग्राम निम्नलिखित संकलन समय त्रुटि उत्पन्न करता है -
ReadingdData.java:6:त्रुटि:प्रतीक नहीं मिल रहा है स्कैनर sc =नया स्कैनर (System.in); ^ प्रतीक:वर्ग स्कैनर स्थान:वर्ग ReadingdDataReadingdData.java:6:त्रुटि:प्रतीक नहीं मिल सकता स्कैनर sc =नया स्कैनर (System.in); ^ प्रतीक:वर्ग स्कैनर स्थान:कक्षा ReadingdData2 त्रुटियाँ
समाधान
-
आपको आवश्यक वर्ग इंटरफ़ेस रखने वाली JAR फ़ाइल के लिए वर्ग पथ सेट करने की आवश्यकता है।
-
आयात . का उपयोग करके पैकेज से आवश्यक वर्ग आयात करें खोजशब्द। आयात करते समय आपको आवश्यक वर्ग का पूर्ण नाम (पैकेज और उप पैकेज सहित) निर्दिष्ट करना होगा।
उदाहरण
आयात करें स्कैनर एससी =नया स्कैनर (System.in); स्ट्रिंग नाम =sc.next (); System.out.println ("हैलो" + नाम); }}आउटपुट
अपना नाम दर्ज करें:कृष्णनमस्कार कृष्णा