java.io.Console केवल तब काम करता है जब आप एक एसटीडीआईएन/एसटीडीओयूटी को पुनर्निर्देशित किए बिना कमांड लाइन से जावा प्रोग्राम शुरू करते हैं।
सिस्टम.in पर कंसोल के साथ मैं जो मुख्य लाभ देखता हूं वह यह है कि आपके पास readPassword() विधि है, जो उपयोगकर्ता द्वारा टाइप किए गए वर्णों को प्रतिबिंबित नहीं करेगी (मुझे सिस्टम के साथ ऐसा करने का कोई तरीका नहीं मिला। में)।
आपके पास रीडलाइन() भी है जो एक प्रॉम्प्ट प्रस्तुत करेगा और एक पंक्ति को पढ़ेगा। आपको अपना खुद का LineNumberReader बनाना नहीं है।
लेकिन, यदि आप चाहते हैं कि आपका जावा प्रोग्राम किसी फ़ाइल या पाइप से रीडायरेक्ट होने पर एसटीडीआईएन से पढ़ने में सक्षम हो, तो आपको अभी भी System.in का उपयोग करना होगा।
अक्षर मिटा रहा है? क्या यह सिस्टम कंसोल द्वारा स्वयं नहीं किया जाता है? – OscarRyz
यदि आप System.in के आस-पास एक BufferedReader का उपयोग करते हैं तो आपको पात्रों या किसी भी सामान को मिटाने की "सूचना" की आवश्यकता नहीं है।कंसोल का उपयोग करने के लिए
readPassword
एक अच्छा कारण है। – Chochosधन्यवाद दोस्तों, आप सही हैं। मैंने अक्षर मिटाए जाने के बारे में हिस्सा हटा दिया। –