Learn Java Language (Part -2)
Control Statements
Introduction to control statements
आप के पड़ौसी कँही जा रहे थे उन्होंने खुद के घर की चाबी देते हुए कहा की मेरी माँ आये तो उन्हें ये चाबी दे देना। आपके पड़ौसी ने आपको condition बताई है की मेरी माँ आये तो उन्हें ही ये चाबी देना और किसी को मत देना। ये condition आपके चाबी देने के action को control करती है। आपका चाबी देना या ना देना इसी condition पर based है। ऐसे ही जब आप कोई program बनाते है तो उसके statements के execution को किसी condition के द्वारा control कर सकते है। और जब वो condition आये तो आप जो statements execute करवाना चाहते है उन्हें execute करवा सकते है।
इसका एक उदाहरण है की जब आप Gmail की website पर जाते है तो आपसे id और password माँगा जाता है। जब आप email और password डालते है तो check किया जाता है की email और password सही है या नहीं। यदि email password सही होते है तो आपको अपने account में मिल जाती है। और email password गलत होने पर आपको एक message show किया जाता है। ये काम control statements की मदद से ही किया जाता है।
Control statements वो statements होते है जिनसे आप program का execution (flow) control करते है। कोनसे statements कब execute होंगे ये control statements के द्वारा ही तय किया जाता है। Java में आपके pass 3 तरह के control statements होते है। जिनमे selection statements एक statement को condition के according select करके execute करते है। Iteration statements के द्वारा कुछ statements को बार बार execute किया जा सकता है। और jump statements program में एक जगह से दूसरी जगह जाने के काम में आते है। आइये इनको जानने का प्रयास करते है।
Control statements वो statements होते है जिनसे आप program का execution (flow) control करते है। कोनसे statements कब execute होंगे ये control statements के द्वारा ही तय किया जाता है। Java में आपके pass 3 तरह के control statements होते है। जिनमे selection statements एक statement को condition के according select करके execute करते है। Iteration statements के द्वारा कुछ statements को बार बार execute किया जा सकता है। और jump statements program में एक जगह से दूसरी जगह जाने के काम में आते है। आइये इनको जानने का प्रयास करते है।
1. Selection statements
Selection statements किसी statement को condition check करने के बाद select करके execute करते है। यदि condition true होती है तो कुछ statements को execute किया जाता है और यदि condition false होती है तो दूसरे किन्ही statements को execute किया जाता है। Selection statements मुख्यतः 3 प्रकार के होते है। इनके बारे में निचे दिया जा रहा है।
2. IF statements
IF statement के लिए if keyword का यूज़ किया जाता है। इस keyword के बाद brackets में condition दी जाती है। ये condition variables से related भी हो सकती है और कोई normal condition भी हो सकती है। Condition के बाद statements का block दिया जाता है। Condition true होने पर सभी statements execute हो जाते है। और यदि condition true नहीं है तो पूरा if block skip कर दिया जाता है।
int a =5, b = 3;
if(a>b)
{
System.out.println("A is bigger than B");
}
if(a>b)
{
System.out.println("A is bigger than B");
}
3. IF ELSE statements
IF ELSE statements भी IF statements की तरह ही होते है। लेकिन IF ELSE statements में आप condition false होने पर भी कुछ statements को execute करवा सकते है।
int a = 5, b = 3;
if(a>b)
{
System.out.println("A is bigger than B");
}
else
{
System.out.println("B is bigger than A");
}
if(a>b)
{
System.out.println("A is bigger than B");
}
else
{
System.out.println("B is bigger than A");
}
4. Switch statements
Switch statements में switch keyword यूज़ करते हुए एक condition pass की जाती है। और निचे cases दिए हुए होते है। जिस case से condition match कर जाती है वही case execute हो जाता है। जैसे की आपके variable की value 3 है तो तीसरे case के statements execute होंगे। कभी ऐसा भी हो सकता है की आपका कोई भी case condition से match नहीं करे। तो ऐसी situation में default case execute होता है।
5. Iteration statements
कई बार ऐसा हो सकता की आप एक ही statement को बार बार execute करने की जरुरत पड़े। Iteration statements कुछ statements तब तक बार बार execute करते है जब तक की दी हुई condition true होती है। Condition false होने पर ये execution बंद हो जायेगा। जैसे आपको किसी variable की value बार बार print करनी है या करने के लिए आपको बार बार print statements लिखने की आवश्यकता नहीं है। आप सिर्फ एक ही बार iteration statement लिखते है और ये बताते है की इस statement को कितनी बार execute करवाना है।
Iteration statements एक ही statement को बार बार execute करवाने के काम आते है। इन्हे looping statements भी कहते है। ये 3 प्रकार के होते है।
कई बार ऐसा हो सकता की आप एक ही statement को बार बार execute करने की जरुरत पड़े। Iteration statements कुछ statements तब तक बार बार execute करते है जब तक की दी हुई condition true होती है। Condition false होने पर ये execution बंद हो जायेगा। जैसे आपको किसी variable की value बार बार print करनी है या करने के लिए आपको बार बार print statements लिखने की आवश्यकता नहीं है। आप सिर्फ एक ही बार iteration statement लिखते है और ये बताते है की इस statement को कितनी बार execute करवाना है।
Iteration statements एक ही statement को बार बार execute करवाने के काम आते है। इन्हे looping statements भी कहते है। ये 3 प्रकार के होते है।
For Loop
For loop सभी loops में सबसे simple और सबसे ज्यादा यूज़ किये जाने वाला loop है। For loop का structure इस प्रकार होता है।
for(initialization;condition;increment)
{
//statements
}
For loop के initialization part में आप एक variable को initialize करते है। इसकी value integer होती है। ये आपके loop का starting point होता है। आप इस variable की जो value देते है loop वही से शुरू होता है। ध्यान रहे की इस variable को condition में जरूर include किया जाता है नहीं तो loop execute नहीं हो सकता है।
{
//statements
}
For loop के initialization part में आप एक variable को initialize करते है। इसकी value integer होती है। ये आपके loop का starting point होता है। आप इस variable की जो value देते है loop वही से शुरू होता है। ध्यान रहे की इस variable को condition में जरूर include किया जाता है नहीं तो loop execute नहीं हो सकता है।
For loop के condition part में आप loop की condition देते है। ये वो condition होती है जिससे की loop terminate होता है। यदि आपने सही condition नहीं दी तो loop infinite तक चलता रहेगा। जब तक ये condition true रहती है तब तक loop चलता रहता है। Condition false होते ही loop terminate हो जायेगा।
Increment part में initialized variable को increment किया जाता है ताकि loop का execution आगे बढ़ सके। और जितनी condition दी है उतना execute हो कर terminate हो जाये। यदि आप variable को increment नहीं करेंगे तो आपका लूप आगे नहीं बढ़ेगा।
class IterSta
{
public static void main(String args[])
{
for(int i=1; i< = 10; i++)
{
System.out.println("Numbers form 1 to 10 ");
System.out.println(i);
}
}
{
public static void main(String args[])
{
for(int i=1; i< = 10; i++)
{
System.out.println("Numbers form 1 to 10 ");
System.out.println(i);
}
}
While loop
While loop for loop से थोड़ा अलग होता है। While loop में आप initialization statement loop के बाहर देते है। Brackets में केवल condition होती है और increment part block के अंदर होता है। Increment part को भी statements के निचे लिखा जाता है।
class WhileStat
{
public static void main(String args[])
{
int i = 1;
while(i<=10)
{
System.out.println(i);
i++;
}
}
{
public static void main(String args[])
{
int i = 1;
while(i<=10)
{
System.out.println(i);
i++;
}
}
While loop का सबसे बड़ा feature ये है की आपको इसमें variable initialize करने की जरुरत नहीं होती है। यदि आप चाहे तो loop को terminate करने के लिए कोई दूसरी condition भी यूज़ कर सकते है। यंहा पर आपके program के variables से related कोई भी condition आ सकती है।
While loop को बिना statements को initialize किये भी यूज़ किया जा सकता है। जबकि for loop के साथ ऐसा नहीं किया जा सकता है।
Do - While loop
For और while loop में statements तब execute होते है जब दी हुई condition true होती है। यानि की statements के execute होने से पहले condition check होती है। लेकिन do-while loop में पहले एक बार statements execute होते है उसके बाद condition check की जाती है। ऐसा सिर्फ एक बार शुरू में होगा। Condition चाहे true हो या false एक बार आपके loop statements जरूर execute होंगे। इसके बाद check करने पर यदि condition true हुई तो loop continue करेगा नहीं तो terminate हो जायेगा।
class doWhileStat
{
public static void main(String args[])
{
int i = 0;
do
{
System.out.println(i);
i++;
}while(i<=10)
}
}
{
public static void main(String args[])
{
int i = 0;
do
{
System.out.println(i);
i++;
}while(i<=10)
}
}
5. Jump statements
Jump statements program में एक जगह से दूसरी जगह जाने के काम आते है। इनके बारे निचे दिया जा रहा है।
6. Break statements
Break statement का प्रयोग आप statement की sequence को break करने के लिए करते है। जैसा की आपने पहले देखा की break statements को switch statements से exit होने के लिए यूज़ किया गया था। यदि switch cases में break statement यूज़ नहीं किये जाये तो सभी cases के statements execute होंगे। ऐसे ही आप loop से भी exit कर सकते है बिना loop के पूरा हुए। आप सिर्फ एक break statement लगाते है और loop वही पर exit हो जाता है।
7. Continue statement
कई बार ऐसी आवश्यकता होती है की आप आपके loop की किसी iteration को execute नहीं करवाना चाहते है। ऐसी condition में आप उस iteration को skip करने के लिए continue statement यूज़ करते है। जैसे की आप चाहते है की 1 से 100 तक के number print हो लेकिन ये वो ही number होने चाहिए जो 2 के multiple हो। ऐसा करने के लिए आप 1 से 100 तक loop चलाएंगे और loop के अंदर check करेंगे की number 2 से divide हो रहा है या नहीं। यदि number 2 से divide नहीं हो रहा है तो continue statement execute होगा और वो iteration skip हो जाएगी। और next iteration automatically शुरू हो जाएगी।
continue;
8. Return statement
Return statement का यूज़ आप ज्यादातर method को return करने के लिए करते है। जैसे की आप कोई value return कर रहे हो। ये statement method definition में सबसे last में होता है। इस method के यूज़ से program उस method से बाहर आ जाता है। हर method में केवल एक ही return statement होता है और वह एक ही value return कर सकता है।
Classes
Java में सब कुछ class है। आखिर क्या होती है class? और java में सब कुछ class क्यों है। आइये जानने का प्रयास करते है। सबसे पहले में आपको बता दू की class एक type होता है। जैसे की data types होते है। आप class type के भी variables create करते है। फर्क सिर्फ इतना होता है की class type variables objects कहलाते है। Class के द्वारा आप बहुत से variables और functions का group structure create करते है और उन्हें एक नाम से identify करते है। इस structure के base पर कई object create किये जा सकते है।
Class एक entity और उस से related attributes को दर्शाती है। यदि बिना class के आप किसी व्यक्ति के बारे में information store करे या represent करे तो इसके लिए आपको कई variables की आवश्यकता होगी। जैसे की नाम, उम्र, पता और फ़ोन नंबर आदि। अब कल्पना कीजिये की आपको 100 व्यक्तियों के बारे में ये information store करनी है। ऐसी situation में आपको 100*4=400 variables create करने होंगे। ये एक बहुत बड़ी समस्या है। इससे बचने के लिए classes को introduce किया गया। Class के माध्यम से आप इन 4 variables का एक type create कर सकते है। और फिर उस type के 100 objects create कर सकते है। Object के माध्यम से आप class के हर variable को access करके value assign कर सकते है। इसका उदाहरण निचे दिया जा रहा है।
class Person
{
String name;
int age;
int phone;
String address;
{
String name;
int age;
int phone;
String address;
}
एक java program में कितनी भी classes create की जा सकती है। लेकिन main method सिर्फ एक ही class में होगा। Main method से ही program का execution start होता है।
एक java program में कितनी भी classes create की जा सकती है। लेकिन main method सिर्फ एक ही class में होगा। Main method से ही program का execution start होता है।
1. Advantages of classes
आगे बढ़ने से पहले आइये जान लेते है की classes के क्या advantages होते है।
2. Security
आपके variables और methods classes में होते है। Classes 3 level का access protection provide करती है। जब तक आप खुद ना चाहे तब तक कोई भी आपके class members को access नहीं कर सकता है।
3. Reduce complexity
Classes का यूज़ करने से आप variables और methods के बिखराव से बच जाते है। Classes से आपका program simple बन जाता है और उसकी complexity दूर हो जाती है।
4. Separation
किसी भी program में आपके पास कई प्रकार का data होता है। अलग अलग data पर अलग अलग operations perform होते है जो की आप methods के द्वारा perform करते है। Classes का यूज़ करते हुए आप एक type के data और उससे related operations (methods) को दूसरे type के data और उससे related operations (methods) से separate कर सकते है।
ऐसा आप हर तरह के data के लिए अलग से class बनाकर कर सकते है। उस data पर perform होने वाले operations (methods) भी आप उसी class में create कर सकते है। इससे आपको program को manage करने में आसानी होती है। जैसे की आप एक class बनाये purchases के बारे में information store करने के लिए और दूसरी class sales की information store करने के लिए बना सकते है।
5. Focus on data
जब आप classes यूज़ करते है तो program का पूरा focus data पर होता है। आप data के लिए ही methods create करते है और data को ही hide करते है। Classes data focused approach है जो की useful software बनाने के लिए बहुत महत्वपूर्ण है।
6. Creating a class
Class create करना बहुत ही आसान है इसके लिए आप class keyword का यूज़ करते है। Class keyword के बाद class का नाम दिया जाता है। यदि आप के program में एक से अधिक classes है तो हर class का नाम unique होना चाहिए। जिस class में main method हो वह class public declare की जानी चाहिए। Class create करने का उदाहरण निचे दिया जा रहा है।
class Person
{
String Name = "Vipin";
int age = 24;
public void display()
{
System.out.println("Name is "+Name+"Age is"+age);
}
public static void main(String args[])
{
this.display();
}
}
ऊपर दिए गए उदाहरण में person नाम की एक class create की गयी है। इस class में name और age 2 variables है। इसमें display() नाम से method भी declare किया गया है। Main method में display() method को call किया गया है।
{
String Name = "Vipin";
int age = 24;
public void display()
{
System.out.println("Name is "+Name+"Age is"+age);
}
public static void main(String args[])
{
this.display();
}
}
ऊपर दिए गए उदाहरण में person नाम की एक class create की गयी है। इस class में name और age 2 variables है। इसमें display() नाम से method भी declare किया गया है। Main method में display() method को call किया गया है।
7. Main method
आपके program में एक से अधिक classes हो सकती है लेकिन main method सिर्फ एक ही class में होगा। पुरे program में जँहा main method होता है वही से program का execution start होता है। जिस class में main method होता है उसे public declare करना necessary होता है।
Main method को भी हमेशा public declare किया जाना चाहिए। ऐसा करना इसलिए जरुरी है क्योंकि classes में सभी methods by default private होते है। और यदि main method को public declare नहीं किया जाये java run time environment आपके main method को access नहीं कर पायेगा और आपके program का execution start नहीं होगा।
जैसा की आप जानते है class के किसी भी method को access करने के लिए objects की जरुरत होती है। Java run time environment आपके main method को बिना object के access कर सके इसलिए main method को static भी declare किया जाता है।
आइये कुछ necessary terms के बारे में जानने का प्रयास करते है।
8. Instance variables/methods
जो variables और methods class के object से ही access किये जाते है उन्हें instance variables या methods कहा जाता है।
9. Static variables/methods
Static variables और methods को बिना objects के access किया जा सकता है। किसी भी variable या method को static बनाने के लिए static keyword यूज़ किया जाता है। Static members को access करने के लिए class के नाम के आगे (.) operator लगा कर उस member का नाम लिखा जाता है।
10. Command line argument
Main method के parameters के रूप में string array होता है। ऐसा command line argument देने के लिए किया गया है। Command line arguments वो arguments होते है जो आप program को run करते समय ही दे सकते है। कई बार ऐसा होता है की आप program run होते समय ही कुछ argument देना चाहते है ताकि आपका program उन arguments के according run हो सके।
Objects
Introduction to java objects
जैसे integer एक type है वैसे ही class भी एक type होती है। Class type create करने के लिए आपको object create करना पड़ता है। Class के अंदर जितने भी variables और methods है उन्हें class के बाहर access करने के लिए आपको उस class का object create करना पड़ता है। Object create करने के बाद आप उस class के variables को access कर सकते है और methods को call कर सकते है। Objects create करने के लिए आप new keyword का उपयोग करते है। Objects create करने के कुछ steps होते है जो निचे दिए जा रहे है।
* सबसे पहले आप जिस class का object create करना चाहते है उस class का नाम लिखे।
* Class के नाम के बाद object का नाम लिखे। ध्यान रहे object का नाम unique होना चाहिए।
* इसके बाद equals (=) operator लगाये।
* इसके बाद new operator लगाये।
* New operator के बाद वापस class का नाम लिखे और उसके आगे brackets लगा के semicolon लगा दे।
Example
class Person
{
String Name="Vipin";
int age=24;
{
String Name="Vipin";
int age=24;
public void display()
{
System.out.println("Name is "+Name+ "Age is"+age);
}
}
{
System.out.println("Name is "+Name+ "Age is"+age);
}
}
class PersonObj
{
public static void main(String args[])
{
Person p1 = new Person();
p1.display();
}
}
{
public static void main(String args[])
{
Person p1 = new Person();
p1.display();
}
}
ऊपर दिए हुए example में 2 classes है। आपके program का execution उस class से start होगा यानि PersonObj class से start होगा। इस class में आप person class का object create कर रहे है। Person class का object create करके आप उस class के object के आगे (.) dot operator लगाकर display method को call कर रहे है। इस object से आप उस class का कोई भी member (variable या method) यदि वो public है तो access कर सकते है।
जब आप कोई भी object create करते है तो सबसे पहले उस class का constructor call होता है। Class के नाम के बाद जो brackets लगे हुए है वो class के constructor को call करते है।
यदि आप चाहे तो objects को भी variables की तरह 2 parts में create कर सकते है। पहले part में आप object को declare करेंगे और दूसरे part में initialize करेंगे।
Example
Person p;
p1 = new Person();
p1 = new Person();
वो objects जिनको आप सिर्फ create करते है लेकिन initialize नहीं करते है reference variables कहते है।
Example
Person p1;
This keyword
This keyword current object को represent करता है। Current object का मतलब currently आप जिस class में काम कर रहे और उसी class में उस class के object की आपको जरुरत है तो आप This keyword का इस्तेमाल करते है। ज्यादातर this keyword उसी situation में यूज़ किया जाता है जब आप current object के किसी member को point करना चाहते है। This keyword को मुख्यतः constructors में यूज़ किया जाता है।
class PersonName
{
string name;
public PersonName(string name)
{
this.name = name;
}
{
string name;
public PersonName(string name)
{
this.name = name;
}
public void show()
{
System.out.println("Name is : "+name);
}
}
{
System.out.println("Name is : "+name);
}
}
class ThisDemo
{
PersonName pn = new PersonName("Vipin");
pn.show();
}
{
PersonName pn = new PersonName("Vipin");
pn.show();
}
जैसा की आप ऊपर दिए हुए उदाहरण में देख रहे है की this keyword PersonName class के name variable को और constructor में दिए हुए parameter को distinguish करने के लिए यूज़ किया गया है। यदि आप यँहा पर this keyword यूज़ ना करे तो compiler को पता ही नहीं चलेगा की आप किस name को कोनसा name assign कर रहे है।
ऐसी कोई भी situation जँहा पर आप current object के member को point करना हो तो आप उसके लिए this keyword यूज़ कर सकते है। This keyword को एक argument की तरह भी पास किया जा सकता है।
Constructors
Introduction to java constructors
यदि आप object को create करने से पहले कुछ task perform करना चाहते है जैसे की variable को initialize करना आदि तो आप constructor create करते है। Objects को यूज़ करने से पहले जो जरुरी काम आप करना चाहते है वो सब आप constructor में कर सकते है।
उदाहरण के लिए आप जिस class का object create कर रहे है उसके variables में कोई values नहीं है। ये values आप user से object create करते समय input करवाना चाहते है। Object क्रिएट करते समय user values(arguments) pass करता है। अब आप को इन values को अपनी class के variables को assign करना है। ये काम आप constructor के through करते है।
यदि आप constructor में उन values को assign नहीं करते है तो object तो create होता है लेकिन वो किसी काम का नहीं होता है। क्योंकि उसमे कोई values ही नहीं होती है। लेकिन जब आप constructor यूज़ करते है तो constructor के execute होने के बाद ही object user के लिए ready होता है।
जब आप कोई constructor क्रिएट नहीं करते है तो भी java automatically constructor क्रिएट करती है। Constructors java के memory allocation process का part है।
Constructor की कुछ characteristics होती है। इन्हे आप constructors क्रिएट करने के rules भी कह सकते है।
* Constructor एक method की तरह ही होता है।
* Constructor का नाम class के नाम जैसा ही होता है।
* Constructor का कोई return type नहीं होता है।
1. Types of java constructors
Java में 4 तरह के constructors होते है। इन सभी के बारे में निचे दिया जा रहा है।
Java में 4 तरह के constructors होते है। इन सभी के बारे में निचे दिया जा रहा है।
Default constructor
जब आप कोई constructor create नहीं करते है तो java automatically default constructor call करती है। ये constructor सभी variables को उनके data type के according initial value के साथ memory allocate कर देता है।
2. Normal constructor
ये constructor आप खुद create करते है। और इसकी body में class variables को खुद ही compile time पर initialize करते है। इसका उदाहरण निचे दिया जा रहा है।
class Person
{
String Name; int age;
Person() //Constructor
{
Name = "Vipin"
age = 24;
}
{
String Name; int age;
Person() //Constructor
{
Name = "Vipin"
age = 24;
}
public void display()
{
System.out.println("Name is : "+Name+" Age is : "+age);
}
}
{
System.out.println("Name is : "+Name+" Age is : "+age);
}
}
class NorCon
{
public static void main (String args[])
{
Person p1 = new Person();
p1.display();
}
}
3. Parameterized Constructors
{
public static void main (String args[])
{
Person p1 = new Person();
p1.display();
}
}
3. Parameterized Constructors
Constructors में आप parameters भी pass कर सकते है। Objects क्रिएट करते समय आप variables की value arguments की तरह pass कर सकते है। ये values आप constructor में variables को assign कर सकते है। इसका उदाहरण निचे दिया जा रहा है।
class Person
{
String Name; int age;
Person(String n , int a )
{
Name = n ;
age = a ;
}
public void display()
{
System.out.println("Name is : "+Name+" Age is : "+age);
}
}
{
String Name; int age;
Person(String n , int a )
{
Name = n ;
age = a ;
}
public void display()
{
System.out.println("Name is : "+Name+" Age is : "+age);
}
}
class ParaCon
{
public static void main (String args[])
{
Person p1 = new Person("Vipin",24 );
p1.display(); }
}
{
public static void main (String args[])
{
Person p1 = new Person("Vipin",24 );
p1.display(); }
}
4. Copy constructor
Copy constructor को किसी object की copy करने के लिए यूज़ किया जाता है। जब आप एक object की value दूसरे object में copy करते है तो दोनों objects ही same values को point करते है। Copy constructors में आप class का object create करते समय उसी class का दूसरा object argument की तरह pass करते है।
class Person
{
int age;
Person(String n , int a )
{
Name = n ;
age = a ;
}
Person(Person p ) // Copy Constructor for p2 object
{
Name = p.Name;
age = p.age;
}
{
int age;
Person(String n , int a )
{
Name = n ;
age = a ;
}
Person(Person p ) // Copy Constructor for p2 object
{
Name = p.Name;
age = p.age;
}
public void display()
{
System.out.println("Name is : "+Name+" Age is : "+age);
}
}
class CopyCon
{
public static void main (String args[])
{
Person p1 = new Person("Vipin",age);
Person p2 = new Person(p1);
p1.display();
p2.display();
}
}
{
System.out.println("Name is : "+Name+" Age is : "+age);
}
}
class CopyCon
{
public static void main (String args[])
{
Person p1 = new Person("Vipin",age);
Person p2 = new Person(p1);
p1.display();
p2.display();
}
}
Methods
Introduction to java methods
कई बार ऐसा होता है की कोई एक काम या कोई एक task आपको program में कई जगह perform करना होता है। यदि आप इस काम को बिना methods के करेंगे तो आपको एक ही code बार बार कई जगह पर लिखना पड़ेगा। इसके बजाय यदि आप एक ऐसा method बना ले जो इस operation को perform करता है। ऐसा करने से आपको एक ही code बार लिखने की जरुरत नहीं है। आप प्रोग्राम में जँहा भी वह task perform करना चाहते है, उस जगह उस method को call कर सकते है।
Method basically एक block of statements होता है। ये block एक particular operation perform करता है। इस operation को आप program में जँहा भी perform करना चाहते है वँहा method का नाम लिखकर उसे call करते है। और compiler उस जगह method को execute कर देता है।
Java में methods का बेहतरीन उदाहरण println() method है। क्या आप बता सकते है की किसी जावा program में आपको इस method की कितनी बार आवश्यकता पड़ती है?? जी हाँ बहुत बार पड़ती है। ये method असल में java library में define किया गया है। इस method का काम ये होता है की आप इसके कोई भी string पास करके उसको screen पर print करवा सकते है। साथ ही आप इस method में variables को pass करके उनकी values भी print करवा सकते है। जब भी आपको इस method की जरुरत होती है तो आप इसको call करते है और इसमें string या variables पास करते है। और ये method उसी जगह पर execute होता है।
यदि आप java library में इस method की definition देखेंगे तो पाएंगे की आप उस code बार बार अपने program में नहीं लिख सकते है। और यदि आप उस code को यूज़ करते है तो आपका पहला hello world program 10 line से ज्यादा का हो जायेगा।
Methods program में code को reduce करने और computer की memory बचाने का अच्छा माध्यम है। साथ ही methods के प्रयोग से programmers को भी same code बार बार नहीं लिखना पड़ता है। इससे programmers का time बचता है।
Structure of method definition
access_specifier return_type method_name (parameters list)
{
// statements to be executed
}
{
// statements to be executed
}
Example
class PersonsInfo
{
{
public void Separator()// our method which separates information of persons
{
System.out.println("-----------------------------------------------------------------------------");
}
{
System.out.println("-----------------------------------------------------------------------------");
}
public static void main(String args[])
{
System.out.println("Name : Juli Age : 23");
Separator();
System.out.println("Name : Sam Age:24");
Separator();
System.out.println("Name : Teri Age : 23");
Separator();
System.out.println("Name : Brian Age:24");
}
}
{
System.out.println("Name : Juli Age : 23");
Separator();
System.out.println("Name : Sam Age:24");
Separator();
System.out.println("Name : Teri Age : 23");
Separator();
System.out.println("Name : Brian Age:24");
}
}
1. Method overloading
जब आप बड़े software's develop करते है तो ऐसा अक्सर होता है की आपके program में एक सा काम करने वाले कई methods होते है। इन सभी methods का नाम याद रखना और उन्हें यूज़ करना बड़ा मुश्किल हो जाता है। जैसे की आप अलग अलग तरह के data को add करना चाहते है तो उसके लिए आप अलग अलग methods बनाएंगे। फिर उन methods को यूज़ करने के लिए आपको उनका नाम भी memorize करना होगा। किसी छोटे से program में ऐसा आप आसानी से कर सकते है। लेकिन जब आप कोई बड़ा software develop कर रहे हो तो सभी methods के नाम आप याद नहीं कर सकते है। इस situation में आप method overloading यूज़ कर सकते है।
Method overloading में जो methods एक जैसा task perform कर रहे है उन सबको आप एक ही नाम देते है। जैसे की अलग अलग addition के methods addition ही कर रहे है। लेकिन कोई integer को add कर रहा है तो तो कोई double को add कर रहा है। इन सबका एक ही नाम दिया जाता है। अब आप पूछ सकते है की यदि एक जैसा नाम रखेंगे तो compiler को पता कैसे चलेगा की आप कोनसा method call करना चाहते है।
इन सभी methods का नाम same होता है। लेकिन इन methods में parameter types और उनकी संख्या अलग अलग होती है। जिससे compiler इन्हे run time पर ये पता चल जाता है की कोनसा method execute करना है। जिस method से arguments match हो जाते है वही method execute हो जाता है।
Example
public class overDemo
{
public static int sum(int a, int b)
{
return a+b;
}
{
public static int sum(int a, int b)
{
return a+b;
}
public static int sum(double x, double y)
{
return x+y;
}
{
return x+y;
}
public static void main(String args [])
{
System.out.println(sum(3,5));
System.out.println(sum(3.5,5.3));
}
}
ऊपर दिए गए example में 2 sum methods है। एक sum() method integers को add करता है और दूसरा double values को add करता है। Method call के दौरान यदि sum() method में integers pass करते है तो integers वाला sum() method execute होगा। और यदि double values pass करते है तो double वाला sum() method execute होगा।
2. Method overriding
जब आप किसी class को inherit करते है तो आप उसके सारे methods को access कर सकते है। लेकिन क्या हो यदि किसी method की definition आपकी sub class के according नहीं है। या फिर आप उस method में कुछ change करना चाहते है। यदि ऐसा है तो आप super class के किसी भी method को sub class में दुबारा define कर सकते है। आप उस method को edit कर सकते है ताकि वो sub class के लिए work कर सके। इसे method overriding कहते है।
Method overriding में sub class super class वाला method यूज़ नहीं करना चाहती है और वो खुद उस method को edit करके यूज़ करना चाहती है। ऐसा करके वो super class के method को override करती है।
उदाहरण के लिए यदि एक class है Area और उसमे display() method है। इस class को Circle class inherit कर रही है। Circle class Area class के display method को यूज़ करने की बजाय उस method को Circle class की आवश्यकता के अनुसार edit कर सकती है। इसी प्रकार यदि इसी Area class को एक rectangle class inherit करती है तो वो भी display() method को खुद की आवश्यकता के अनुसार बदल कर वापस define कर सकती है।
जब आप किसी method को override करते है तो आपको 2 बाते याद रखनी चाहिए।
Super class के method का और sub class के method का नाम same होगा।
Sub class की parameter list super class की parameter list से match होनी चाहिए।
Example
class Area
{
public void display()
{
System.out.println(“Displaying area……..”);
}
}
{
public void display()
{
System.out.println(“Displaying area……..”);
}
}
class circle extends Area
{
public void display()
{
System.out.println(“Displaying circle…….”);
}
{
public void display()
{
System.out.println(“Displaying circle…….”);
}
public static void main(String args[])
{
Area obj = new Area();
obj.display();
this.display();
}
}
{
Area obj = new Area();
obj.display();
this.display();
}
}
Inheritance
Introduction to java inheritance
जैसे पिता की संपत्ति पर पुत्र का अधिकार होता है और पुत्र उस संपति का उपयोग करता है। वैसे ही यदि आप चाहे तो एक class को पिता (super class) बना सकते है, और दूसरी class को पुत्र (sub class) बना सकते है। ऐसा करने से एक class दूसरी class की properties (methods, variables आदि ) को access कर सकती है। ऐसा करने से पुत्र (sub class) को पिता (super class) की सम्पूर्ण property (methods, variables आदि) को access करने के अधिकार प्राप्त हो जाते है।
कल्पना कीजिये आपने कोई class पहले से create की हुई है और इस class में कुछ ऐसे methods है जो आपकी किसी दूसरी class में भी काम आ सकते है। इन methods को दुबारा लिखने की बजाय आप पिछली पुरानी class में से उन methods को access कर सकते है। ऐसा करने के लिए जो class methods को access करना चाहती है उसे दूसरी class की sub class बनना होगा। Sub class बनने के लिए आपकी class को उस दूसरी class को extend करना होगा। इसे ही inheritance कहते है।
Inheritance से आप एक ही code को बार बार लिखने की उलझन से बच जाते है। Inheritance की इस खूबी को re-usability कहते है। यानि एक ही code को बार बार अलग अलग जगह पर reuse किया जा सकता है।
जब कोई एक class दूसरी class को inherit करना चाहती है तो वह extends keyword यूज़ करती है। और यदि आप चाहते है की आपके के द्वारा बनायीं हुई class को कोई दूसरी class inherit ना करे तो इसके लिए आप class के नाम से पहले final keyword लगा देते है। जिन classes के नाम से पहले final keyword होता है उन्हें inherit नहीं किया जा सकता है।
कोई भी class सिर्फ एक ही class को extend कर सकती है। जब कोई class एक से अधिक classes को extend करती है तो वह multiple inheritance कहलाता है। और में आपको बताना चाहता हुँ की जावा में multiple inheritance allow नहीं है। इसकी जगह पर आप multilevel inheritance implement कर सकते है।
जिस class को inherit किया जाता है वह super class कहलाती है। और जो class inherit करती है वह sub class कहलाती है। यँहा पर एक ध्यान देने योग्य बात ये है की sub class super class के सभी methods और variables को access नहीं कर सकती है। जो methods public और protected declare किये हुए है उन्हें ही sub class access कर सकती है। Super class के किसी भी private member को sub class access नहीं कर सकती है। यदि super class ने किसी और class को extend कर रखा है तो उस class के भी सभी public और protected members को आपकी class यूज़ कर सकती है।
1. Types of java inheritance
Java में 3 तरह से inheritance को यूज़ किया जाता है। आपकी application के लिए आपको जो suitable लगे आप वही तरीका यूज़ कर सकते है। इन तीनों तरीकों के बारे में निचे दिया जा रहा है।
2. Single Inheritance
Single inheritance में एक class किसी दूसरी क्लास को extend करती है। इस तरह के के inheritance का उपयोग basic programming में किया जाता है।
Single inheritance में एक class किसी दूसरी क्लास को extend करती है। इस तरह के के inheritance का उपयोग basic programming में किया जाता है।
3. Multilevel inheritance
Multilevel inheritance में एक class दूसरी class को extend करती है और दूसरी class तीसरी class को extend करती है।
4. Hierarchical inheritance
Hierarchical inheritance में एक class को बहुत सी classes extend करती है। इस तरह inheritance का प्रयोग जब किया जाता जब super class के task के कई sub task होते है।
Hierarchical inheritance में एक class को बहुत सी classes extend करती है। इस तरह inheritance का प्रयोग जब किया जाता जब super class के task के कई sub task होते है।
5. Inheriting a class
यदि आप किसी class को inherit करना चाहते है तो आप extends कीवर्ड उसे करते है। आप अपनी class के नाम के बाद extends keyword लगाते है और उसके बाद आप जिस class को inherit करना चाहते है उस class का नाम लिखते है। Inheritance का उदाहरण निचे दिया जा रहा है।
class A
{
public void display()
{
System.out.println("This is A class");
}
{
public void display()
{
System.out.println("This is A class");
}
public static void main(String args[])
{
display();
}
}
{
display();
}
}
class B extends A
{
public static void main(String args[])
{
display();
}
{
public static void main(String args[])
{
display();
}
}
Exception Handling
Introduction to java exception handling
Exceptions run time errors होती है। Exception एक ऐसी situation होती है जो आपके रन होते हुए program को रोक देती है। जैसे की जितनी memory आपके program को execute होने के लिए चाहिए, उतनी memory आपके computer में यदि नहीं है तो आपके program का execution रुक जायेगा। ये out of memory exception है। ऐसी ही situations को आप exceptions कहते है।
जिस प्रकार यदि आप program बनाते समय किसी statement के आगे semicolon लगाना भूल जाये, तो आपको program error शो करता है और compile नहीं होता है। उसी प्रकार exception generate होने पर आपका program रुक जाता है execute नहीं होता है।
यदि आप चाहते है की आपका program exception आने पर रुके नहीं execute होता रहे तो इसके लिए आपको exceptions को handle करना होगा। इसे ही exception handling कहते है। जब आप exceptions को handle करते है तो आपका program exception आने पर रुकता नहीं है बल्कि exception वाले code को skip करके बाकि के code को execute करता है।
1. Keywords
Java में आप कुछ keywords की मदद से exceptions को handle करते है। ये सभी keywords मिलकर एक structure बनाते है जो implement करने में बहुत ही आसान होता है। इन keywords के बारे में निचे दिया जा रहा है।
2. Try
आपके program का वह code जो exception generate कर सकता है, उसे आप try block में लिखते है। उदाहरण के लिए आप program में कोई mathematical operation कर रहे है और आपको लगता है की exception generate हो सकती है तो आप उस code को try block में लिखते है।
3. catch
यदि try block में कोई exception generate होती है, तो वह इसी block में handle की जाती है। आप इस block में वह code लिखते जो exception आने पर आप execute करना चाहते है। उदाहरण के लिए आप एक message print करवा सकते है जो यूजर को बताये की exception generate हुई है।
4. throw
ज्यादातर संभावित exceptions आपके लिए पहले से ही java library में define है और ये exception java automatically throw कर देती है। लेकिन यदि आप चाहते है तो खुद की exceptions भी create कर सकते है। ऐसी एक्सकेप्शन्स को आपको खुद ही throw करना होता है इसके लिए आप throw keyword यूज़ करते है। आप चाहे तो predefined exception भी throw कर सकते है।
ज्यादातर संभावित exceptions आपके लिए पहले से ही java library में define है और ये exception java automatically throw कर देती है। लेकिन यदि आप चाहते है तो खुद की exceptions भी create कर सकते है। ऐसी एक्सकेप्शन्स को आपको खुद ही throw करना होता है इसके लिए आप throw keyword यूज़ करते है। आप चाहे तो predefined exception भी throw कर सकते है।
5. Throws
आप nested try blocks यूज़ कर सकते है। यदि आप चाहते है की किसी exception को outer try block handle करे तो ऐसी situation में आप throws keyword यूज़ करते है। आप method में definition के आगे throws keyword लगा कर सभी exceptions के नाम लिख देते है। ऐसा करने से यदि कोई exception आती है तो outer try block उसे handle करता है।
6. Finally
Exception handle करने के बाद आप जो code execute करवाना चाहते है उसे finally block में लिखते है। Try block में exception आने के बाद compiler उस code को execute नहीं करता है और catch block के बाद सीधा finally block को execute करता है।
7. Steps to handle exceptions
* सबसे पहले आप उस code को try block में लिख दीजिये जिससे exception generate हो सकती है।
* Try block के बाद catch block में exception को handle करने के लिए code लिखिए। जैसे की आप exception से related कोई message print करवा सकते है।
* Exception handle करने के बाद आप जो code execute करवाना चाहते है उसे finally block में लिख दीजिये।
8. Some common exceptions
Exceptions को handle करने से पहले exceptions के बारे में जानना आपके लिए बहुत जरुरी है। कुछ exceptions ऐसी होती है जो java में regularly आती है। इन common exceptions पर आप आसानी से practice कर सकते है और अपनी skill को improve कर सकते है। Java में regularly आने वाली कुछ common exceptions के बारे में निचे दिया जा रहा है।
9. Arithmetic Exceptions
कोई भी arithmetic error जैसे की यदि आप किसी number को zero से divide करने की कोशिश करे या फिर किसी variable में उसकी size से ज्यादा value store करने के कोशिश करे तो Arithmetic-Exception generate होती है।
10. Class Cast Exception
यदि आप किसी class का reference दूसरी class में store करवाना चाहते है और यदि पहली class दूसरी class की sub class नहीं होती है तो Class-Cast-Exception generate होती है।
11. Array Store Exception
यदि आपने string array बनाया है और उसमे आप string store करने की कोशिश करते है तो Array-Store-Exception generate होती है।
12. Array Index Out Of Bounds Exception
यदि आपके array की size 10 है और आप 11th position पर value store करने की कोशिश करे या 11th position को access करने की कोशिश करे तो Array-Index-Out-Of-Bounds-Exception generate होती है।
13. Illegal Argument Exception
जब आप किसी method में invalid argument pass करते है जैसे की int की जगह string पास कर दे तो Illegal-Argument-Exception generate होती है।
14. Null Pointer Exception
Java में आप किसी reference variable को null value assign कर सकते है लेकिन यदि आप इस reference variable को यूज़ करने का प्रयास करते है तो NullPointerException generate होती है।
15. Number Format Exception
जब आप किसी string value को number में cast करने की कोशिश करते है तो Number-Format-Exception आती है।
Example
Import java.lang.*;
class
{
public static void main(String args[])
{
int num = 120;
int a = 0;
try
{
num = num / a;
System.out.println(num);
}
{
public static void main(String args[])
{
int num = 120;
int a = 0;
try
{
num = num / a;
System.out.println(num);
}
catch(ArithmeticException e)
{
System.out.println(“You can not divide a number by zero”);
}
}
}
{
System.out.println(“You can not divide a number by zero”);
}
}
}
Interfaces
Introduction to java interfaces
Java interfaces का concept एक उदाहरण से समझने का प्रयास करते है। मान लीजिये आपका एक दोस्त है। और आपके दोस्त की एक कंपनी है। आप भी एक कंपनी खोलना चाहते है। आप अपने मित्र से पूछते है की मुझे कंपनी खोलने के लिए क्या करना होगा। आपका दोस्त आपको बताता है की sales department, production department, accounts और management department आपको setup करना होगा। ध्यान दीजिये आपके दोस्त ने सिर्फ आपको बताया है की आपको क्या करना है। आप ये कैसे करेंगे ये आप पर depend करता है। इसी तरह interfaces classes को बताते है की उन्हें क्या करना है। Class वो काम कैसे करती है ये उस class पर depend करता है।
Java interface उसी तरह है जैसे की आप exam time में सिर्फ topics की headings को याद करते है और एग्जाम में उन headings की detail अपने मन से लिख कर आते है। Interface किसी boss की तरह होता है और class किसी employee की तरह interface क्लास को काम बताता है और class उस काम को करती है। Interface कोई भी काम खुद नहीं करता है। Interface में define किये गए methods को आपको किसी task की तरह देखना चाहिए जो interface क्लास से करवाना चाहता है।
Interfaces में define किये गए सभी methods by default abstract होते है। मतलब इनकी कोई body नहीं होती है। Interface को हमेशा public declare किया जाता है। जब कोई class interface को implement करती है तो उसे interface में declare किये गए सभी methods की definition provide करनी होती है। आप किसी method को छोड़ नहीं सकते है। एक interface को कोई class extend नहीं करती है। Interfaces हमेशा implement किये जाते है। इसके लिए आप implements keyword यूज़ करते है।
Java में multiple inheritance allow नहीं है। लेकिन java में interfaces के द्वारा multiple inheritance implement किया जा सकता है। Interfaces super class की तरह methods provide करते है, बस उनकी definitions हमे implement करने वाली class में देनी होती है। Interfaces classes की तरह ही होते है, लेकिन आप इनका object नहीं create कर सकते है। और किसी method की body भी आप नहीं declare कर सकते है।
Methods के साथ ही आप interfaces में variables भी declare कर सकते है। Interfaces में declare किये जाने वाले variables static और final होने चाहिए। एक interface एक से ज्यादा interfaces को extend कर सकता है। एक बार interface declare करने के बाद कितनी भी classes उस interface को implement कर सकती है। और एक class जितने चाहे उतने interface implement कर सकती है। इसके लिए आपको सभी interfaces के नामों को (,) से separate करना होगा।
Interfaces classes के साथ Is-a relationship establish करते है। उदाहरण के लिए आपके pass एक interface है fruits नाम से जिसमे color और taste आदि methods है और एक mango नाम की class है। अब यदि mango class fruit interface को implement करती है तो इनमे Is-a relation होगा। यानि आप कह सकते है की Mango is a fruit.
1. Working with interfaces
Interfaces को declare करना बिलकुल आसान होता है। इसके लिए आप interface keyword यूज़ करते है। पहले तो आप public access modifier define करते है, इसके बाद आप interface keyword लिख कर interface का नाम लिखते है। इसके बाद curly brackets में आप उन सभी methods को declare करते है जो आप किसी class से implement करवाना चाहते है। वैसे तो interfaces के अंदर सभी methods by default public होते है। लेकिन आप चाहे तो public access modifier सभी methods के आगे add कर सकते है। इसका उदाहरण नीचे दिया जा रहा है।
जैसे की मैने आपको पहले बताया implements keyword को यूज़ करते हुए कोई भी class आसानी से interface को implement कर सकती है। Interfaces का complete उदाहरण निचे दिया जा रहा है।
Example
public interface yourFriend
{
public void sales();
public void production();
public void accounts();
public void management();
}
public interface yourFriend
{
public void sales();
public void production();
public void accounts();
public void management();
}
public class You implements yourFriend
{
{
public void sales()
{
// implement sales department
}
{
// implement sales department
}
public void production()
{
// implement production department
}
{
// implement production department
}
public void accounts()
{
// implement production department
}
{
// implement production department
}
public void management()
{
// implement production department
}
{
// implement production department
}
}
Packages
Introduction to java packages
यदि आप java library ध्यान से देखेंगे तो पाएंगे की उसमे classes को उनकी category के according अलग अलग packages में organize किया गया है। यदि आप उन classes को यूज़ करना चाहते है तो आपको packages को import करना पड़ता है। ऐसा क्यों किया गया ??. Classes को directly भी तो access किया जा सकता था।
Packages से आप related types (classes, Interfaces etc.) का group बना सकते है। एक package में आप किसी दूसरे package को भी डाल सकते है।
आपने कभी सोचा है की किसी eCommerce software में कम से कम कितनी source code की lines होंगी। ये लाखों lines में हो सकती है। क्या एक programmer इतनी lines लिख सकता है या इतना बड़ा software बना सकता है??. बना तो सकता है लेकिन उसे काफी समय लग जायेगा। इसलिए देखा जाता है की एक software को बहुत से programmer मिलकर बनाते है।
अब कल्पना कीजिये की जब सभी programmers का code एक साथ execute किया जायेगा तो ये possibility होती है की किन्ही 2 programmers ने class या interface का नाम same रखा दिया हो। अगर ऐसा हुआ तो ऐसी situation में program error show करेगा। इस problem से बचने के लिए java एक mechanism provide करती है जिसे package कहते है।
हर programmer अपना सारा code एक अलग package में रखता है। ऐसा करने से यदि कोई programmers classes या interfaces का नाम same भी रख देते है तो आपके program में error नहीं आती है।
Packages को यूज़ करने से पहले आपको ये समझ लेना चाहिए की ये काम कैसे करते है। जिस प्रकार आप एक class में method और variable create करते है और यदि वो किसी दूसरी class के जैसे ही नाम वाले हो तो भी program में कोई error नहीं आती है। उसी प्रकार अलग अलग packages में होने की वजह से same नाम वाली classes कोई error generate नहीं करती है।
Features of packages
* Packages की मदद से आप java में classes और interfaces को आसानी से maintain कर सकते है। Packages की मदद से आप अलग अलग category की classes को अलग अलग packages में maintain कर सकते है। ऐसा करने से programmer की productivity बढ़ती है।
* Java packages आपकी classes और interfaces को access protection provide करते है। यदि package में class create करते समय आपने कोई access modifier यूज़ नहीं किया है तो उस class को दूसरे packages की classes access नहीं कर सकती है। क्योंकि उस class पर package private modifier apply हो जाता है।
* Java packages से duplicate names की problem solve हो जाती है।
1. Creating java packages
Package create करने के लिए आप package keyword यूज़ करते है। इस keyword के आगे आप package का unique नाम लिखते है।
package myPackage;
ये आपके file की सबसे पहली line होनी चाहिए। इसके बाद आप जितनी भी classes और interfaces create करेंगे वो सब उस package में include होती जाएगी। यदि आपकी classes जिनको आप एक package में add करना चाहते है वो सब अलग अलग files में है तो सबको एक file में इकक्ठा करने की जरुरत होती है। बस आपको सभी files में top पर ये statement लिखना है तो वो सभी classes भी उसी package में include हो जाएगी।
ये आपके file की सबसे पहली line होनी चाहिए। इसके बाद आप जितनी भी classes और interfaces create करेंगे वो सब उस package में include होती जाएगी। यदि आपकी classes जिनको आप एक package में add करना चाहते है वो सब अलग अलग files में है तो सबको एक file में इकक्ठा करने की जरुरत होती है। बस आपको सभी files में top पर ये statement लिखना है तो वो सभी classes भी उसी package में include हो जाएगी।
2. Using java packages
यदि कोई दूसरा programmer आपके package की किसी class को यूज़ करना चाहता है तो उसे आपका package import करना पड़ेगा।
यदि कोई दूसरा programmer आपके package की किसी class को यूज़ करना चाहता है तो उसे आपका package import करना पड़ेगा।
import myPackage;
Package को import करने के बाद वह सभी classes को यूज़ कर सकता है। इसी प्रकार वह किसी दूसरे programmer के package को भी import कर सकता है और उसकी classes को भी यूज़ कर सकता है।
इसके अलावा आप (.) operator लगा कर भी किसी class को directly access कर सकते है। इसे package member access कहते है। ऐसी situation में आप सिर्फ उसी class को access कर पाते है।
import newPackage.myClass
3. Some common java packages
Java में एक main package होता है जिसे Java API package कहते है। इस package में आपके अलग अलग काम के लिए दूसरे packages होते है जिन्हे आप program बनाते समय import करके यूज़ करते है। जैसे की IO package और AWT package आदि।
आइये ऐसे ही कुछ common और सबसे ज्यादा काम में आने वाले packages के बारे में जानने का प्रयास करते है। इनके बारे में निचे जा रहा है।
4. java.language
इस package में language support classes होती है। ये वो classes होती है जो java compiler खुद यूज़ करता है। इसलिए ये classes बहुत ही important होती है।
5. java.util
ये package language utility classes provide करता है। जैसे की vector, hashtable आदि।
6. java.io
ये pacakge input ouput support classes provide करता है। ये data के input और output के लिए facility provide करता है।
7. java.AWT
इस package में graphical user interface implement करने के लिए classes होती है।
8. java.net
ये package networking के लिए classes provide करता है। इसमें server से connection establish करने के लिए classes होती है।
9. java.applet
ये package applets create करने और implement करने के लिए classes provide करता है।
ये package applets create करने और implement करने के लिए classes provide करता है।
10. Sub packages
जब आप किसी package के अंदर एक और package create करते है तो अंदर वाला package sub package कहलाता है। अब तक classes को categories करने की बात बताई गयी लेकिन आप sub packages की मदद से packages को भी categories कर सकते है।

No comments: