जावा मानक पुस्तकालय: पूर्ण अवलोकन
जावा मानक पुस्तकालय (Java Standard Library) पैकेजों, क्लासों और इंटरफ़ेसों का एक मूलभूत सेट है जो JDK (Java Development Kit) की प्रत्येक स्थापना के साथ आता है। यह डेवलपर को एप्लिकेशन बनाने के लिए आवश्यक सब कुछ प्रदान करता है: बुनियादी डेटा प्रकारों और कलेक्शन के साथ काम करने से लेकर नेटवर्क संचार और मल्टीथ्रेडिंग तक। इस पुस्तकालय को समझना जावा पर प्रभावी विकास की कुंजी है।
मानक पुस्तकालय के मुख्य पैकेज
पुस्तकालय पैकेजों में व्यवस्थित है। आइए उनमें से सबसे महत्वपूर्ण पर नज़र डालें:
java.lang— स्वचालित रूप से आयात किया जाने वाला पैकेज, जिसमें रैपर क्लास (Integer,Double), स्ट्रिंग (String,StringBuilder), सिस्टम फ़ंक्शन (System,Math) और अपवाद शामिल हैं।java.util— कलेक्शन, तिथियों के साथ काम, यादृच्छिक संख्याएँ, उपयोगिताएँ (Arrays,Collections)।java.io— इनपुट-आउटपुट स्ट्रीम, फ़ाइलों के साथ काम और सीरियलाइज़ेशन।java.nio— नॉन-ब्लॉकिंग इनपुट-आउटपुट (New I/O), बफ़र और चैनल।java.net— नेटवर्क प्रोग्रामिंग (सॉकेट, URL, HTTP)।java.util.concurrent— मल्टीथ्रेडिंग: एक्ज़ीक्यूटर, ब्लॉकिंग क्यू, परमाणु चर।java.time(Java 8+) — तिथि और समय के साथ काम करने के लिए आधुनिक API (LocalDate,ZonedDateTime)।
पैकेज java.lang: सब कुछ का आधार
पैकेज java.lang को स्पष्ट आयात की आवश्यकता नहीं है। इसमें क्लास Object शामिल है — सभी क्लासों के पदानुक्रम की जड़। आइए प्रमुख तत्वों पर नज़र डालें:
// क्लास String — अपरिवर्तनीय स्ट्रिंगString greeting = "नमस्ते, Java!";String upper = greeting.toUpperCase(); // "नमस्ते, JAVA!"
// StringBuilder — परिवर्तनीय स्ट्रिंग (लूप में कॉन्केटनेशन से अधिक कुशल)StringBuilder sb = new StringBuilder("Hello");sb.append(" World");sb.insert(5, ",");System.out.println(sb.toString()); // "Hello, World"
// क्लास Math — गणितीय संक्रियाएँdouble pi = Math.PI;double sqrt = Math.sqrt(144); // 12.0int max = Math.max(10, 20); // 20रैपर क्लास (Integer, Boolean और अन्य) पर विशेष ध्यान दिया जाना चाहिए। वे कलेक्शन में प्रिमिटिव का उपयोग करने की अनुमति देते हैं और रूपांतरण के लिए विधियाँ प्रदान करते हैं:
int primitive = 42;Integer wrapped = Integer.valueOf(primitive); // ऑटोबॉक्सिंगint back = wrapped.intValue(); // अनबॉक्सिंग
// स्ट्रिंग को संख्या में पार्स करनाint parsed = Integer.parseInt("12345");System.out.println(parsed); // 12345पैकेज java.util: कलेक्शन और उपयोगिताएँ
यह सबसे व्यापक पैकेज है। इसका मूल कलेक्शन फ्रेमवर्क (Collections Framework) है:
- List — क्रमबद्ध सूचियाँ:
ArrayList(इंडेक्स द्वारा तेज़ पहुँच),LinkedList(तेज़ सम्मिलन/हटाना)। - Set — बिना डुप्लिकेट के सेट:
HashSet,TreeSet(सॉर्टिंग)। - Map — "कुंजी-मान" शब्दकोश:
HashMap,TreeMap।
import java.util.*;
// HashMap के साथ काम करने का उदाहरणMap<String, Integer> ages = new HashMap<>();ages.put("Alice", 30);ages.put("Bob", 25);ages.put("Charlie", 35);
for (Map.Entry<String, Integer> entry : ages.entrySet()) { System.out.println(entry.getKey() + ": " + entry.getValue());}
// सूची को सॉर्ट करनाList<Integer> numbers = new ArrayList<>(Arrays.asList(5, 3, 8, 1));Collections.sort(numbers);System.out.println(numbers); // [1, 3, 5, 8]इसके अलावा, पैकेज में शामिल हैं
पुस्तकालय में भी
Go (Golang) के लिए डिपेंडेंसी इंजेक्शन कंटेनर — wire, dig, fx
Protocol Buffers Java: पूर्ण गाइड उदाहरणों के साथ
Swift में दिनांकों के साथ कार्य: Foundation, SwiftDate, DateTools (iOS/macOS)