आर्टिकल डाउनलोड करें आर्टिकल डाउनलोड करें

जावा (Java) 1995 में जेम्स गोस्लिंग (James Gosling) के द्वारा तैयार की गई एक ऑब्जेक्ट ओरिएंटेड़ प्रोग्रामिंग लेंग्वेज (object-oriented programming language) है, जिसका मतलब कि ये "ओब्जेक्ट्स (objects)" के कान्सैप्ट को "फील्ड्स (fields)" (जो कि ऑब्जेक्ट को डिस्क्राइब करने वाले एट्रिब्यूट्स होते हैं) और "मेथड्स (methods)" (ऑब्जेक्ट के द्वारा किया जाने वाला काम या एक्शन) के साथ रिप्रेजेंट करती है। जावा एक "एक बार लिखें, कहीं भी रन करें (write once, run anywhere)" लेंग्वेज है, जिसका मतलब इसे हर उस प्लेटफॉर्म पर रन होने के लिए तैयार किया गया है, जिस पर जावा वर्च्युअल मशीन (Java Virtual Machine/JVM) हो। चूंकि जावा एक बेहद वर्बोज (verbose) प्रोग्रामिंग लेंग्वेज है, इसलिए बिगिनर्स के लिए इसे समझना और सीखना काफी आसान है। ये ट्यूटोरियल जावा में प्रोग्राम लिखने के बारे में बताता है।

विधि 1
विधि 1 का 3:

पहला जावा (Java) प्रोग्राम लिखना

आर्टिकल डाउनलोड करें
  1. जावा में प्रोग्राम लिखना शुरू करने के लिए, अपना वर्क एनवायरनमेंट तैयार करें: काफी सारे प्रोग्रामर्स उनकी जावा प्रोग्रामिंग के लिए एक्लिप्स (Eclipse) और नेटबीन्स (Netbeans) जैसे इंटीग्रेटेड डेवलपमेंट एनवायरनमेंट्स (IDEs) का यूज करते हैं, लेकिन फिर अगर कोई चाहे तो जावा प्रोग्राम को बिना IDEs के भी लिख और कंपाइल किया जा सकता है।
  2. नोटपेड (Notepad) के जैसा कोई एक छोटा सा प्रोग्राम भी, जावा में प्रोग्रामिंग करने के लिए काफी रहता है: कुछ प्रोग्रामर्स कभी-कभी vim और emacs जैसे टर्मिनल के ही अंदर मौजूद टेक्स्ट एडिटर्स का यूज किया करते हैं। एक अच्छा टेक्स्ट एडिटर, जिसे विंडोज (Windows) मशीन पर और लिनक्स (linux) बेस्ड मशीन (मैक, उबुंटू, आदि) पर इन्स्टाल किया जा सकता है, वो सब्लाइम टेक्स्ट (Sublime Text) है, जिसे हम इस ट्यूटोरियल में भी यूज करने जा रहे हैं।
  3. आपके पास में जावा सॉफ्टवेयर डेवलपमेंट किट (Java Software Development Kit) के इन्स्टाल होने की पुष्टि कर लें: आपको आपके प्रोग्राम को कंपाइल करने के लिए इसकी जरूरत पड़ेगी।
    • विंडोज-बेस्ड ऑपरेटिंग सिस्टम में, अगर एनवायरनमेंट वेरिएबल सही नहीं रहेंगे, तो आपको आपके प्रोग्राम को रन javac करते वक़्त एक एरर मिलेगी। इस एरर को अवॉइड करने के लिए जावा सॉफ्टवेयर डेवलपमेंट किट को इन्स्टाल करने के बारे में ज्यादा से ज्यादा जानकारी इकट्ठी कर लें।
विधि 2
विधि 2 का 3:

हेलो वर्ल्ड प्रोग्राम (Hello World Program)

आर्टिकल डाउनलोड करें
  1. हम पहले एक ऐसा प्रोग्राम तैयार करेंगे, जो "Hello World" प्रिंट करता है: अपने टेक्स्ट एडिटर में, एक नई फ़ाइल तैयार करें और इसे "HelloWorld.java" नाम से सेव कर दें। HelloWorld आपका क्लास नेम (प्रोग्राम के अंदर मौजूद क्लास का नाम) है और आपको आपकी क्लास का नाम, आपकी फ़ाइल के नेम के जैसा ही रखना होता है।
  2. मेन मेथड public static void main(String[] args) ये वही मेथड है, जो प्रोग्राम के रन होते वक़्त एग्जीक्यूट होगी। बाकी सारे जावा प्रोग्राम्स में भी मेन मेथड को इसी तरह से डिक्लेयर किया जाएगा।
     public 
     class 
     HelloWorld 
     { 
     public 
     static 
     void 
     main 
     ( 
     String 
     [] 
     args 
     ) 
     { 
     } 
     } 
    
  3. प्रोग्राम में "Hello World" प्रिंट करने वाली लाइन का कोड लिखना:
     System 
     . 
     out 
     . 
     println 
     ( 
     "Hello World." 
     ); 
    
    • आइए इस लाइन के कम्पोनेंट्स पर ध्यान देते हैं:
      • System सिस्टम को कुछ करने के लिए कहता है।
      • out सिस्टम को बताता है, कि हमको आउटपुट देना है।
      • println इसका मतलब "प्रिंट लाइन (print line)" से होता है, तो इसका मतलब कि हम सिस्टम को आउटपुट में एक लाइन प्रिंट करने का कह रहे हैं।
      • ("Hello World.") के दोनों तरफ मौजूद ब्रैकेट्स का मतलब, कि System.out.println() एक पैरामीटर लेती है, जो अभी इस वक़्त एक स्ट्रिंग (String) "Hello World." है।
    • ध्यान रखें, कि जावा के ऐसे कुछ नियम भी हैं, जिन्हें हमें फॉलो करना होता है:
      • आपको हर एक लाइन के आखिर में एक सेमीकोलन (semicolon) लगाना ही होता है।
      • जावा केस सेंसिटिव (case sensitive) होती है, तो इसलिए आपको आपको मेथड नेम्स, वेरिएबल नेम्स और क्लास नेम्स को सही केस में लिखना होता है, नहीं तो आपको एरर मिलती है।
      • किसी विशेष मेथड या लूप के लिए लिखे जाने वाले कोड को कर्ली ब्रैकेट्स (curly brackets) के अंदर लिखा जाता है।
  4. आपका हेलो वर्ल्ड प्रोग्राम अब इस तरह से नजर आना चाहिए:
     public 
     class 
     HelloWorld 
     { 
     public 
     static 
     void 
     main 
     ( 
     String 
     [] 
     args 
     ) 
     { 
     System 
     . 
     out 
     . 
     println 
     ( 
     "Hello World." 
     ); 
     } 
     } 
    
  5. अपनी फ़ाइल को सेव करें और प्रोग्राम को कंपाइल करने के लिए कमांड प्रॉम्प्ट (command prompt) या टर्मिनल (terminal) खोलें: आपने जिस फोल्डर में HelloWorld.java सेव किया है, उस तक जाएँ और javac HelloWorld.java टाइप कर दें। ये जावा कंपाइलर (compiler) को बताता है, कि आप HelloWorld.java को कंपाइल करना चाह रहे हैं। इसमें अगर कोई एरर या एरर्स होंगी, तो कंपाइलर आपको बताएगा, कि आपने क्या गलत किया है, नहीं तो, आपको कंपाइलर से कोई मैसेज नहीं मिलेगा। अगर आप अब उस डाइरेक्टरी में जाकर देखेंगे, जिसमें आपका HelloWorld.java है, तो अब आप वहाँ पर एक HelloWorld.class को भी पाएंगे। ये वही फ़ाइल है, जिसका इस्तेमाल जावा के द्वारा प्रोग्राम रन करने के लिए किया जाएगा।
  6. आखिर में, अब हमें प्रोग्राम को रन करना है! कमांड प्रॉम्प्ट या टर्मिनल में, java HelloWorld टाइप करें। ये जावा को बताएगा, कि आप क्लास HelloWorld को रन करना चाहते हैं। अब आप आपके कंसोल (console) पर "Hello World." दिखता हुआ पाएंगे।
  7. बधाई हो, आपने अपना पहला जावा प्रोग्राम बना लिया है!
विधि 3
विधि 3 का 3:

इनपुट और आउटपुट (Input and Output)

आर्टिकल डाउनलोड करें
  1. अब हम अपने हेलो वर्ल्ड प्रोग्राम को ही आगे बढ़ाकर यूजर से इनपुट की मांग करेंगे: हमारे हेलो वर्ल्ड प्रोग्राम में, हमने यूजर को दिखाने के लिए एक स्ट्रिंग को प्रिंट किया, लेकिन प्रोग्राम का इंटरैक्टिव पार्ट उस वक़्त शुरू होता है, जब यूजर को भी प्रोग्राम में इनपुट एंटर करने दिया जाए। अब हम अपने प्रोग्राम को आगे बढ़ाकर यूजर से उसका नाम एंटर करने का कहेंगे और फिर हम यूजर को उसके नाम के साथ ग्रीट (अभिवादन) करेंगे।
  2. जावा में, ऐसी कुछ लाइब्रेरीज़ मौजूद रहती हैं, जिनके ऊपर हमें एक्सेस प्राप्त होता है, लेकिन हमको उन्हें इम्पोर्ट करना होता है। java.util इन्हीं में से एक लाइब्रेरी है, जिसके अंदर वो स्कैनर ऑब्जेक्ट मौजूद रहता है, जिसकी हमें यूजर से इनपुट लेने में जरूरत पड़ने वाली है। स्कैनर क्लास को इम्पोर्ट करने के लिए, हम इन लाइन्स को कोड की शुरुआत में एड करते हैं।
    import java.util.Scanner;
    • ये हमारे प्रोग्राम को बताता है, कि हम Scanner ऑब्जेक्ट को यूज करना चाहते हैं, जो java.util पैकेज में मौजूद है।
    • आप अगर java.util पैकेज के सारे ऑब्जेक्ट को एक्सेस करना चाहते हैं, तो हमें कोड की शुरुआत में बस import java.util.*; लिखना होगा।
  3. मेन मेथड के अंदर, स्कैनर ऑब्जेक्ट का एक नया इन्सटेन्स (instance) शुरू करें: जावा एक ऑब्जेक्ट-ओरिएंटेड़ प्रोग्रामिंग लेंग्वेज है, तो ये ऑब्जेक्ट का यूज करके कान्सैप्ट को रिप्रेजेंट करती है। स्कैनर ऑब्जेक्ट एक ऑब्जेक्ट का ही एक ऐसा उदाहरण होता है, जिसमें फील्ड और मेथड्स भी होती हैं। स्कैनर क्लास यूज करने के लिए, हमें एक नया स्कैनर ऑब्जेक्ट तैयार करना होगा, जिसे हम बाद में किसी और मेथड के में कॉल करेंगे। ऐसा करने के लिए, हम लिखेंगे:
    Scanner userInputScanner = new Scanner(System.in);
    • userInputScanner उस स्कैनर ऑब्जेक्ट का नाम है, जिसे हमने अभी तैयार किया है। ध्यान दें, इस नाम को केमल (camel) केस में लिखा गया है; जावा में किसी भी वेरिएबल को नाम देने का यही तरीका होता है।
    • हम एक ऑब्जेक्ट के नए इन्सटेन्स (instance) को तैयार करने के लिए new ऑपरेटर का यूज करते हैं। इसलिए इस इन्सटेन्स में, हमने new Scanner(System.in) लिखकर स्कैनर ऑब्जेक्ट का एक नया इन्सटेन्स तैयार कर लिया है। यहाँ पर, हमने System.in को एक पैरामीटर की तरह लिया है। System.in प्रोग्राम को सिस्टम पर से इनपुट स्केन करने को कहता है, जो कि वही इनपुट है, जो यूजर प्रोग्राम में टाइप करने वाला है।
  4. हमें यूजर से इनपुट की माँग भी करना होगी, ताकि यूजर को भी समझ आए, कि कब उसे कंसोल पर कुछ लिखना है। इसे एक System.out.print या एक System.out.println के द्वारा किया जा सकता है।
    System.out.print("What's your name? ");
  5. स्कैनर ऑब्जेक्ट से उस अगली लाइन में जाने का कहें, जिसमें यूजर इनपुट टाइप करेगा और इसे एक वेरिएबल में स्टोर करने का कहें: स्कैनर हमेशा ही यूजर के द्वारा टाइप किए हुए इनपुट का डेटा स्टोर रखता है। दी हुई लाइन स्कैनर से यूजर के द्वारा टाइप किए हुए उसके नाम को लेने का कहेगी और इसे एक वेरिएबल के रूप में स्टोर करने का कहेगी:
    String userInputName = userInputScanner.nextLine();
    • जावा में, एक ऑब्जेक्ट की मेथड यूज करने के लिए objectName.methodName(parameters) किया जाता है। userInputScanner.nextLine() में, हम हमारे स्कैनर ऑब्जेक्ट को, हमारे द्वारा उसे दिये हुए नाम से कॉल कर रहे हैं और फिर हम उसकी मेथड nextLine() को कॉल कर रहे हैं, जो कि कोई पैरामीटर नहीं लेती है।
    • ध्यान रखें, हम अगली लाइन को एक और दूसरे ऑब्जेक्ट: स्ट्रिंग (String) ऑब्जेक्ट में स्टोर कर रहे हैं। हमने हमारे स्ट्रिंग ऑब्जेक्ट को userInputName नाम दिया है।
  6. अब जैसे कि हमारे पास में यूजर का नाम स्टोर हो चुका है, अब हम यूजर के लिए ग्रीटिंग प्रिंट कर सकते हैं। हमारे द्वारा मेन क्लास में लिखा हुआ System.out.println("Hello World."); कोड याद है न? हमारे द्वारा लिखे हुए बाकी सारे कोड इस लाइन के ठीक ऊपर जाएंगे। अब हम इस लाइन को मोडिफ़ाई कर सकते हैं:
    System.out.println("Hello " + userInputName + "!");
    • हमारे द्वारा "Hello ", यूजर के नेम, और "!" को इकट्ठा करने के लिए "Hello " + userInputName + "!" लिखे जाने को स्ट्रिंग कोंकेटिनेशन (String concatenation) कहा जाता है।
    • यहाँ पर हो ये रहा है, कि हमारे पास में तीन स्ट्रिंग्स: "Hello ", यूजरनेम (userInputName), और "!" हैं। जावा में स्ट्रिंग्स इम्यूटेबल (immutable) होती हैं, जिसका मतलब कि इन्हें फिर बदला नहीं जा सकता। इसलिए हम जेबी इन तीन स्ट्रिंग्स की कोंकेटिनेटिंग करते हैं, तब हम असल में एक और नई स्ट्रिंग तैयार कर रहे होते हैं, जिसमें वो ग्रीटिंग मौजूद होती है।
    • फिर हम इस नई स्ट्रिंग को लेते हैं और इसे एक पैरामीटर के तौर पर System.out.println में डाल देते हैं।
  7. सब-कुछ को एक-साथ रख लें और सेव कर दें। हमारा कोड अब कुछ ऐसा नजर आएगा:
    import java.util.Scanner;
    
    public class HelloWorld {
        public static void main(String[] args) {
            Scanner userInputScanner = new Scanner(System.in);
            System.out.print("What's your name? ");
            String userInputName = userInputScanner.nextLine();
            System.out.println("Hello " + userInputName + "!");
        }
    }
  8. कमांड प्रॉम्प्ट या टर्मिनल पर जाएँ और ठीक उसी कमांड को रन करें, जिसे हमने HelloWorld.java के लिए पहली बार यूज किया था। हमें प्रोग्राम को पहले: javac HelloWorld.java से कंपाइल करना होता है। फिर, हम इसे java HelloWorld से रन कर सकते हैं।

सलाह

  • जावा एक ऑब्जेक्ट ओरिएंटेड़ प्रोग्रामिंग लेंग्वेज है, तो इसलिए ऑब्जेक्ट ओरिएंटेड़ प्रोग्रामिंग लेंग्वेज के बारे में ज्यादा से ज्यादा जानकारी रखना आपकी मदद कर सकता है।
  • ऑब्जेक्ट ओरिएंटेड़ प्रोग्रामिंग के कुछ खास फीचर्स होते हैं। उन खास फीचर्स में से तीन मेन फीचर्स ये रहे:
    • एनकैप्स्यूलेशन (Encapsulation) : ऑब्जेक्ट के कुछ कम्पोनेंट्स तक एक्सेस को रिस्ट्रिक्ट करने की क्षमता। जावा में फील्ड्स और मेथड्स के लिए प्राइवेट (private), प्रोटेक्टेड (protected) और पब्लिक (public) मोडिफ़ायर्स पाए जाते हैं।
    • पॉलीमोर्फिज़्म (Polymorphism) : किसी ऑब्जेक्ट की एक अलग पहचान बनाने की क्षमता। जावा में, एक ऑब्जेक्ट को किसी दूसरे में ऑब्जेक्ट में, किसी और ऑब्जेक्ट की मेथड का यूज करने के लिए डाला जा सकता है।
    • इन्हेरिटेन्स (Inheritance) : एक ही हिरार्की में एक मौजूदा ऑब्जेक्ट की तरह किसी और क्लास की फील्ड्स और मेथड्स को यूज करने की क्षमता।

संबंधित लेखों

अपने सिम कार्ड से अपना मोबाइल नंबर पता करें
उस व्यक्ति को कॉल करें जिसने आपका नंबर ब्लॉक कर दिया है (Call a Person That Has Blocked Your Number)
इंस्टाग्राम पासवर्ड रीसेट करें (Reset Your Instagram Password)
इंस्टाग्राम पर किसी लड़की से बात शुरू करें (Start a Conversation with a Girl on Instagram)
ब्लॉक (block) किए हुये नंबर पर वापस कॉल करें
WhatsApp टिप्स: फेक नंबर से व्हाट्सअप चलायें
फोटो की मदद से किसी की खोज करें (Search and Find About Someone Using Image Easily)
यूट्यूब से गाने डाउनलोड करें (Kaise YouTube se Gaane Download Kare)
PC में हिंदी में टाइप करें (Type in Hindi on a PC)
Pirate Bay से डाउनलोड करें (Download from Pirate Bay)
लड़कियों से ऑनलाइन बातें करें (Talk to Girls Online)
एंड्राइड में सेफ मोड बंद करें
HTML का इस्तेमाल करके एक वेब पेज तैयार करें (Create a Simple Web Page with HTML)
क्रोम पर एडल्ट कॉन्टेंट ब्लॉक करने के 4 आसान तरीके

विकीहाउ के बारे में

सभी लेखकों को यह पृष्ठ बनाने के लिए धन्यवाद दें जो ४,९५९ बार पढ़ा गया है।

यह लेख ने कैसे आपकी मदद की?