Search This Blog

Thursday, October 18, 2012

What is package in java?

हमने कही बार जावा के प्रोग्रामो में पैकेज का उपयोग किया होगा , लेकिन कही विध्यार्ती इनकी उपयोगिता को समझने में कठिनाई महसूस करते है । आज के इस लेख में हम देखेंगे की पैकेज क्या है और इनका उपयोग क्यों किया जाता है । अंत में मैने जावा के कुछ पैकेज के नाम और उनके उपयोग का विवरण दिया है , इस से आपको इनके उपयोगिता को समझने में आसानी होगी ।

सबसे पहले हम यह देखने की हमे पैकेज की आवश्यकता क्यों पड़ी ?
मान लीजिए की आपको एक ऐसा प्रोग्राम बनाना है जो क्लाइंट और सर्वर के बीच में कनेक्टिविटी पर आधारित है । दोनो(क्लाइंट और सर्वर ) के वार्तालाप स्थापित करने के लिए TCP  सबसे उपयुक्त बातचीत का माध्यम है जहा डाटा लोस की संभावना सबसे कम है । अब इस प्रोग्राम के दो कंप्यूटर के बीच वार्तालाप स्थापित करने के लिए आपको दो क्लास बनानी पड़ेगी एक सर्वर के लिए और दूसरी क्लाइंट के लिए । इतना ही नहीं आपको TCP  और ऐसे कही दुसरे प्रोटोकोल के बारे में पूरी जानकारी होना भी आवश्यक है । इन सब झंझटो से बचाने के लिए ही जावा ने पैकेज बनाये जहा पर एक बार किसी क्लास को जार फॉर्मेट में डालने के बाद कही भी और कितनी बार भी उसका प्रयोग किया जा सकता है । और इसमें भी रोज काम आने वाले पैकेज जावा के इनस्टॉल होते से ही हमे उपलब्ध हो जाते है । जैसे ऊपर दिए उदहारण में हम java .नेट पैकेज का उपयोग कर सकते है ।

पैकेज जावा का एक महत्त्वपूर्ण अंग है । जब भी आप किसी क्लास को डिफाइन करते है , जावा स्वत: ही java.lang  नाम के पैकेज को इम्पोर्ट कर लेता है । जावा बिना आपके काम में रुकावट डाले इस प्रकार इस पैकेज को इम्पोर्ट करता है है जैसे कुछ हुआ ही नहीं । यह पैकेज जावा की सभी standard क्लासों को जावा को उपलब्ध कराता है ।

इम्पोर्ट स्टेटमेंट कम्पाइलर को यह बताता उस  एक्सटर्नल क्लास को कहा खोजना है जिसकी आप को कोड में जरूरत है । जैसे अगर आप java .io .* ( इनपुट आउटपुट पैकेज ) को इम्पोर्ट करते है , तो कम्पाइलर इस पैकेज की सभी क्लासों को देखता है और आपके कोड के लिए जरूरी क्लास का पता लगाता है ।

अब आप में से कही लोग पूछेंगे की यह क्लास को कहा खोजता है?

इसको आप इस तरह समझिए जैसे आप किसी फोल्डर में से आपकी काम की फाइल निकालते हो । जावा आप जावा को इस कमांड द्वारा ( import java .io .*) यह कहते हो की आपको io  पैकेज की सभी क्लासेज(*) चाहिए तो कम्पाइलर जावा के io  फोल्डर में(java /io ) सभी jar एक्सटेंशन वाली क्लासों को खोज निकालता है ।

जावा स्टैण्डर्ड एडिशन 6 के कुछ महत्वपूर्ण पैकेज व उनके बारे में जानकारी  :

java.lang — यह पैकेज बिना इम्पोर्ट स्टेटमेंट के ही उपलब्ध रहता है , यह भाषा के मूल कार्यषमता और मोलिक प्रकार का पैकेज है   
java.util — डाटा स्ट्रक्चर क्लासों का एक समूह 
java.io — फाइल पर काम करने वाली  क्लासों का समूह 
java.math — गणित करने के लिए उपयोग 
java.nio — नया इनपुट आउटपुट फ्रेमवर्क 
java.net — नेटवर्किंग में सहायक 
java.security — पासवर्ड बनाना, कोड वर्ड , और सिक्यूरिटी से जुडी चीज़े 
java.sql — JDBC के माध्यम से जावा को डेटाबेस से जोड़ने में सहायक क्लासे 
java.awt — GUI (ग्राफ़िक यूजर इंटरफ़ेस) सहायक सामग्री 
javax.swing —  प्लेटफार्म से स्वतंत्र GUI की क्लासेज ( आजकल काफी प्रचलित)
java.applet — एप्लेट बनाने में काम में आने वाली क्लासे 

No comments:

Post a Comment