नमस्ते दोस्तों,

कैसे हैं आप? आशा करता हूँ कि आप सब अच्छे होंगे| तो दोस्तों, हमने “First Java Application” tutorial के part-1 में Java program के कुछ basic concepts जाने थे और साथ ही Core Java programming language में अपना पहला “Hello World!” program लिखना सीखा था और उसमें दिए गए parameters का अर्थ भी समझा था|

तो आइये, अब हम “First Java Application” tutorial के part-2 में एक Java program के कुछ और concepts को समझ लेते हैं| इसके लिए सबसे पहले हम अपने Text Editor में एक छोटा सा program लिख लेते हैं|

Code:

class Example{
    public static void main(String[] args){
         System.out.println(“Hello World!”);
    }
}

class Abc{
}

class Xyz{
}

जैसा कि आप इस program में देख सकते हैं कि मेने यहाँ पर 3 class create करी हैं| इन्हें हम user defined class कहते हैं| पहली class ‘Example’, दूसरी class ‘Abc’ और तीसरी class ‘Xyz’ है|

तो यहाँ पर सबसे पहला question यह निकलता है कि क्या हम Java programming language में एक से अधिक classes create कर सकते हैं या नहीं? तो इस question का answer है: हाँ, Java programming language में ऐसा करना सम्भव है| हम अपने Java के souce code में multiple classes create कर सकते हैं|

अब इस program की pre-defined class के बारे में बात कर लेते है| क्या हमारे द्वारा लिखे गए इस Java program में कोई pre-defined class है? जी हाँ, इस program में 2 pre-defined classes हैं|

i.                   String
ii.                 System

तो हम इन pre-defined classes को अपने program में प्रयोग करने के लिए package import करेंगे| ‘String’ और ‘System’ class ‘java.lang’ package में उपस्थित होती हैं| Java programming language में Package क्या होते हैं? इसके बारे में हम आगे आने वाले tutorials में जानेंगे|

तो अब question उठता है कि हम अपने Java program में packages को कैसे और कितनी तरह से import कर सकते हैं| तो आइये हम लोग अपने Java program में package import करना सीखते हैं|

Java program में package को class से पहले import किया जाता है| यहाँ पर हम packages को 2 प्रकार से import कर सकते हैं:

1.    import java.lang.*;
ð Importing all classes.

Example:

import java.lang.*;

class Example{
    public static void main(String[] args){
         System.out.println(“statement”);  
    }
}

2.    import java.lang.String;
import java.lang.System;

Example:

import java.lang.String;
import java.lang.System;

class Example{
    public static void main(String[] args){
         System.out.println(“statement”);  
    }
}

अब question यह बनता है कि इन दोनों में से कौन-सा तरीका सही है? सही तो दोनों ही तरीके हैं, पर जब हमें अपने program में सारी classes की आवश्यकता ही नहीं है, तो हम बेकार में ही सभी classes को क्यों import करायें| इसीलिए दूसरा तरीका recommended है|

तो हम अपने द्वारा tutorial की शुरुआत में लिखे गए program पर पुनः लौटते हैं| जो इस प्रकार है:

class Example{
    public static void main(String[] args){
         System.out.println(“Hello World!”);
    }
}

class Abc{
}

class Xyz{
}

तो जैसा कि मेने आपको ऊपर बताया था कि मेने इस program में 3 user defined classes को create किया है| अब question यह है कि इस program को हम किस name से save करेंगे? इस program को save करते समय हम निम्नलिखित बातों का ध्यान रखेंगे:

1.    Program को save करने से पहले हम ये check करेंगे कि हमारे program में कोई public class है या नहीं| अगर हमारे program में public class है, तो हम अपने program को भी उसी name से save करेंगे, जो हमारी public class का name है|

Example:

public class Example1{
      public static void main(String[] args){
           System.out.println(“Statement”);
       }
}

class Abc{
}

class Xyz{
}

Java programming language में public class और class के विषय में हम आगे आने वाले tutorials में पढेंगे|

तो यहाँ पर हमारी public class का name ‘Example1’ है, इसीलिए हमें program को ‘Example1.java’ के name से save करना पड़ेगा|
Note: Java programming language में एक से अधिक public class declare नहीं की जा सकती है|

2.    यदि हमारे program में public class नहीं हो और program में multiple user defined classes हों, तो ऐसी स्थिति में हम program को किसी भी name से save कर सकते हैं| जैसे कि हमारे program में है, इसीलिए हम अपने program किसी भी name से save कर सकते हैं|

Example:

·       Example.java
·       Abc.java
·       Xyz.java
·       Ankur.java, etc.

तो अब हम अपने द्वारा लिखे गए program को ‘Example.java’ के name से save करेंगे|

तो अब तक हमने इस tutorial में जाना कि अपने Java program में package कैसे import करते हैं और अपने program को save करने के कुछ rules के बारे में|

तो दोस्तों, आइये अब जल्दी से हम command prompt (cmd) का प्रयोग करके javac command साथ अपने program को compile कर लेते हैं|

To compile: javac Example.java

तो अब हमने अपने program को compile भी कर लिया| अब बारी है उसे execute/run कराने की| मगर उससे पहले मैं आपसे कुछ पूछना चाहता हूँ| आपको को क्या लगता है, यहाँ पर क्या होगा? Java Compiler यहाँ पर कितनी .class files generate करेगा? आपमें में कुछ का उत्तर होगा कि Java Compiler एक .class file generate करेगा| तो कुछ का उत्तर होगा कि यहाँ पर error आएगी| परन्तु, यहाँ पर ऐसा कुछ भी नहीं होगा| यहाँ पर Java Compiler तीन .class files generate करेगा| जो निम्न हैं:

o   Example.class
o   Abc.class
o   Xyz.class

जब हम इन तीनों .class files को command prompt (cmd) के द्वारा java command का प्रयोग करके execute/run करेंगे, तो JVM यहाँ पर दो चीज़ें check करेगा:

i.                   पहली, हमारे program में class/public class उपस्थित है या नहीं| यदि हमारे source code/program में class available है, तो JVM .class file को memory में load कर देगा|

यदि हमारे program में class available नहीं है, तो यह error message show करेगा|

ii.                 दूसरी, .class file को memory में load करने के बाद JVM program के execution को start करने के लिए main method को call करेगा|

JVM को अगर ये दोनों चीज़ें .class files में मिल गयीं, तो .class files execute हो जायेंगी|

Example:

o   जब हम अपनी पहली .class file ‘Example.class’ को java command का प्रयोग करके execute करेंगे, तो JVM सबसे पहले class check करेगा| class check करने के बाद JVM main method check करेगा कि class में main method उपस्थित है या नहीं| जब उसे यह दोनों चीज़ें मिल जायेंगी, तो हमारी .class files execute हो जाएगी|

To execute/run: java Example
Output: Hello World!
      
o   पर, जब हम अपनी दूसरी .class files, अर्थात ‘Abc.class’ और ‘Xyz.class’ को execute करेंगे, तो निम्नलिखित error show होगी:

C:\Users\Ankur\Desktop>java Abc
Error: Main method not found in class Abc, please define the main method as:
   public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application


अब हम command prompt (cmd) में java command का प्रयोग करके XXX file को execute करते हैं:

To execute/run: java XXX

पर क्या यहाँ पर हमने XXX name से कोई file create करी थी? नहीं, यहाँ पर हमने इस name से कोई भी file create नहीं की थी| ऐसी स्थिति में जब हम इसे execute करायेंगे, तो निम्नलिखित error show होगी:

C:\Users\Ankur>java XXX
Error: Could not find or load main class XXX

तो अब आइये, यहाँ पर हम एक basic Java program से related कुछ और जरूरी बातों पर एक नज़र डाल लेते हैं|

1.    Java programming language में एक समय में multiple files को compile कराना possible है|

Example:
मान लेते हैं कि हमारे पास Java की कुछ source file पड़ी हैं|
जैसे:

ü Ankur.java
ü Abc.java
ü Xyz.java
ü AAA.java
ü BBB.java

अब हम इन files को निम्न प्रकार से compile कर सकते हैं:

Ø $javac Ankur.java à 1-file compiled
Ø $javac Abc.java Xyz.java à 2-files are compiled
Ø $javac *.java à all files are compiled

2.    तो आइये अब हम बात कर लेते हैं, अपने Java program में package import करने की|

ü Java programming language में 14 pre-defined packages होते हैं|

Example:

java.lang, java.io, java.math, java.awt, java.util, etc.

ü Default package in Java à java.lang

ü तो अब question ये बनता है कि क्या हमें Java program में default package को import करने की आवश्यकता है या नहीं? तो इसका उत्तर है, “नहीं, हमें default package अर्थात ‘java.lang’ package को अपने program में import करने की आवश्यकता नहीं होती है| यह optional होता है|”


Example:

उदहारण के लिए यहाँ पर हम दोनों तरह से program बना कर देख लेते हैं|

i.       पहले उदहारण में हम package import करके program बनाते हैं| जो नीचे दिया है:

import java.lang.String;
import java.lang.System;

class Demo1{
  public static void main(String[] arg){
       System.out.println(“Demo 1”);
  }
    }

·       Save this file as ‘Demo1.java’
·       To compile: javac Demo1.java
·       To run: java Demo1
·       Output: Demo 1

ii.     दूसरे उदहारण में हम बिना default package import करे ही program बनाते हैं| जो नीचे दिया है:

class Demo2{
  public static void main(String[] args){
       System.out.println(“Demo 2”);
  }
}

o   Save this file as ‘Demo2.java’
o   To compile: javac Demo2.java
o   To run: java Demo2
o   Output: Demo 2

3.    आइये अब हम यहाँ पर अपने इस turorial के अन्तिम topic पर चर्चा कर लेते हैं| Java programming language में single souce code में multiple main classes को declare करना सम्भव है|

आइये इसे एक उदहारण के द्वारा समझते हैं| नीचे दिए गए program में हम 3 classes declare करेंगे और तीनों classes में main method होगा|

Example:

public class Demo3{
    public static void main(String[] args){
         System.out.println(“Demo3 class”);
    }
}

class AAA{
    public static void main(String[] args){
         System.out.println(“AAA class”);
    }
}

class BBB{
    public static void main(String[] args){
         System.out.println(“BBB class”);
    }
}

तो आइये दोस्तों, अब इस उदहारण को command prompt (cmd) के द्वारा compile और run करके देख लेते हैं कि इसका output क्या आता है?

·       Save this file as ‘Demo3.java’
·       To compile: javac Demo3.java
·       To run: java Demo3
·       Output: Demo 3 class
·       To run: java AAA
·       Output: AAA class
·       To run: java BBB
·       Output: BBB class

तो दोस्तों, यह थी Java program से related कुछ basic जानकारी| इसी के साथ हमारे “Core Java Tutorials” का एक और tutorial समाप्त होता है| आशा करता हूँ कि आपको ये श्रँखला पसंद आ रही होगी और साथ ही मेरे द्वारा बताये गए topics भी आपको समझ में आ रहे होंगे| यहाँ पर में आप लोगों से एक बात और कहना चाहता हूँ कि जो लोग भी मेरे tutorials से Core Java programming language सीख रहे हैं, वो इन tutorials को पढने के साथ-साथ इनकी अपने Desktop/Laptop पर प्रैक्टिस भी करते रहें, जिससे आपके सारे concepts clear होते चले जाएँ|

यहाँ पर मैं आप लोगों के लिए इस tutorial के part-1 का link इस tutorial के अन्त में डाल दूँगा| जिससे कि आप में से जिन्होंने भी वो tutorial नहीं पढ़ा हो, तो उन लोगों से मेरा आग्रह है कि वो कृपया नीचे दिए गए link पर click करके पहले उस tutorial को पढ़ें और उसके बाद यह tutorial पढ़े, जिससे आपके सारे concepts clear हो सकें|

अगर मेरे से इस tutorial में किसी topic कि व्याख्या करने में कोई गलती हो गयी हो, तो उसके लिए मुझे क्षमा करें| और कृपया मुझे मेरे blogger पर और मेरे facebook group “#TechEduc@te” पर follow करें| Java के बारे में और अधिक जानने के लिए मेरे साथ बने रहिये| अभी के लिए इस tutorial में इतना ही| जल्द ही Core Java के अगले tutorial के साथ मिलते हैं| तब तक के लिए नमस्ते|

आपका
अँकुर सक्सेना

Tutorial 4; Part 1: First Java Application

Previous: First Java Application-Part 1

Next: Java Tokens and Data Types