java - Does creating a File object create a physical file or touch anything outside the JVM? -


जावा वर्ग फ़ाइल में 4 कन्स्ट्रक्टर हैं:

  • फ़ाइल (फ़ाइल माता पिता, स्ट्रिंग बच्चे)
    एक मूल फ़ाइल नाम और मूल पथ पथ से एक नया फ़ाइल उदाहरण बनाता है।

  • फ़ाइल (स्ट्रिंग पाथनाम)

  • फ़ाइल (स्ट्रिंग पेरेंट, स्ट्रिंग चाइल्ड)

  • फ़ाइल (यूआरआई यूरी) एक नया बनाता है फ़ाइल फ़ाइल को परिवर्तित करके: उदाहरण के लिए एक अमूर्त पथनाम में यूआरआई।

    जब मैं करता हूँ:

      फ़ाइल f = new file (" myfile.txt ");   

    क्या डिस्क पर एक भौतिक फाइल बनाई जाती है? या क्या जेवीएम ने ओएस में कॉल किया है या क्या यह केवल जेवीएम के अंदर किसी ऑब्जेक्ट का निर्माण करता है?

    नहीं, नया फ़ाइल ऑब्जेक्ट फाइल सिस्टम पर फ़ाइल बनाते हैं नहीं विशेष रूप से, आप फ़ाइल ऑब्जेक्ट बना सकते हैं जो पथ (और यहां तक ​​कि Windows पर ड्राइव) को संदर्भित करते हैं जो मौजूद नहीं हैं।

    कन्स्ट्रक्टर करें पूछें अंतर्निहित फ़ाइल सिस्टम प्रतिनिधित्व यदि संभव हो तो कुछ प्रकार के सामान्यीकरण कार्रवाइयां करने के लिए, लेकिन यह नहीं को फ़ाइल उपस्थित होने की आवश्यकता होती है सामान्यकरण के एक उदाहरण के रूप में, इस कोड को विंडोज पर चलने पर विचार करें:

      फ़ाइल f = नया फ़ाइल ("c: \\ a / b \\ c / d.txt"); Println (च);   

    यह प्रिंट करता है

      c: \ a \ b \ c \ d.txt   

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

Comments

Popular posts from this blog

mysql - BLOB/TEXT column 'value' used in key specification without a key length -

javascript - What is an alternative to using getElementByClass for hiding multiple elements? -

c - Selecting a file randomly from a file system -