उपयोगिता वर्ग/विधि

एक उपयोगिता वर्ग स्थिर चर और स्थिर विधियों वाला एक सहायक वर्ग है जो संबंधित कार्यों की एक विशिष्ट सूची करता है।

आइए मानक उपयोगिता वर्गों के उदाहरण देखें:

java.lang.Math यह वर्ग, जो कई अलग-अलग गणितीय गणनाएँ कर सकता है, हमें कुछ गणितीय स्थिरांक देता है।
java.util.Arrays कक्षा में सरणी के साथ काम करने के लिए विभिन्न विधियां होती हैं (जैसे उन्हें क्रमबद्ध करना और खोजना)। इस वर्ग में एक स्थिर कारखाना भी है जो हमें सरणियों को सूचियों के रूप में देखने देता है।
java.lang.System यह वर्ग सिस्टम के साथ काम करने के तरीकों को लागू करता है। अक्सर हम इसका उपयोग कंसोल पर टेक्स्ट प्रदर्शित करने के लिए करते हैं। ऐसा करने के लिए, हम स्थैतिक का संदर्भ देते हैंबाहरवेरिएबल, जो एक PrintStream ऑब्जेक्ट को स्टोर करता है, और इसके Println मेथड ( System.out.println ) को कॉल करता है।

हम स्वयं एक उपयोगिता वर्ग भी बना सकते हैं: ऐसा करने के लिए, हम केवल स्थिर सार्वजनिक विधियों के साथ एक वर्ग बनाते हैं जिसकी हमें आवश्यकता होती है। लेकिन याद रखें कि यूटिलिटी क्लास बनाने के लिए आपके पास एक अच्छा कारण होना चाहिए। उदाहरण के लिए, शायद आपको कई अलग-अलग वर्गों में एक ही कार्य (जैसे जटिल गणना) करने के लिए एक ही विधि या विधियों के सेट का उपयोग करने की आवश्यकता है।

आइए उपयोगिता वर्ग - पथ वर्ग का एक उदाहरण देखें।

पथ वर्ग

इस वर्ग में केवल एक स्टैटिक गेट मेथड होता है जिसमें विभिन्न पैरामीटर सूचियों के साथ दो वेरिएंट होते हैं।

वे तर्क जिन्हें हम प्राप्त करने की विधि में पारित कर सकते हैं:

get(स्ट्रिंग फर्स्ट, स्ट्रिंग... और) एक संपूर्ण पथ या निर्देशिकाओं के नामों की सूची और (या) अंतिम तर्क में फ़ाइल।
प्राप्त करें (यूआरआई यूरी) एक यूआरआई।

यह उपयोगिता वर्ग पथ (एक स्ट्रिंग के रूप में) या यूआरआई को पथ में परिवर्तित करने की समस्या को हल करता है । हम पहले ही पाथ की खोज कर चुके हैं और समझते हैं कि हमें इसकी आवश्यकता क्यों है और हम इसके साथ कैसे काम कर सकते हैं।

जैसा कि होता है, हम अक्सर स्ट्रिंग्स या यूआरआई के रूप में पथों से निपटते हैं । यह वह जगह है जहाँ हम Paths उपयोगिता वर्ग के तरीकों का उपयोग कर सकते हैं ।

आइए उदाहरण देखें:

उदाहरण टिप्पणी

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    
हम गेट मेथड को एक स्ट्रिंग (फाइल का पाथ) पास करते हैं और एक पाथ प्राप्त करते हैं । फिर हम आवश्यकतानुसार इसके साथ काम कर सकते हैं।

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    
URI से पथ भी प्राप्त किया जा सकता है

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    
हम निर्देशिका नामों के अनुक्रम और फ़ाइल के नाम का संकेत देते हैं जिसका पथ आवश्यकता के साथ है।

लेकिन यहाँ एक चेतावनी है। Java 11 के आगमन के साथ, get विधि का कोई भी कार्यान्वयन Path.of को कॉल करता है ।


public static Path get(String first, String... more) {
    return Path.of(first, more);
}
 
public static Path get(URI uri) {
    return Path.of(uri);
}
    

इस उपयोगिता वर्ग को पदावनत घोषित किया जा सकता है, इसलिए हमें इसके बजाय Path.of का उपयोग करना चाहिए।

पहले बाद

Path path =
Paths.get("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path =
Path.of("C:\\Users\\User\\Documents\\MyFile.txt");
                    

Path path = Paths.get(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Path.of(URI.create("file:///Users/User/Code/MyClass.java"));
                    

Path path = Paths.get(System.getProperty("user.home"),"documents", "document.txt");
                    

ath path = Path.of(System.getProperty("user.home"),"documents", "document.txt");