Java Classes
Introduction to Java 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;
}
एक java program में कितनी भी classes create की जा सकती है। लेकिन main method सिर्फ एक ही class में होगा। Main method से ही program का execution start होता है।
Advantages of Classes
आगे बढ़ने से पहले आइये जान लेते है की classes के क्या advantages होती है।
Security
आपके variables और methods classes में होते है। Classes 3 level का access protection provide करती है। जब तक आप खुद ना चाहे तब तक कोई भी आपके class members को access नहीं कर सकता है।
Reduce complexity
Classes का यूज़ करने से आप variables और methods के बिखराव से बच जाते है। Classes से आपका program simple बन जाता है और उसकी complexity दूर हो जाती है।
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 करने के लिए बना सकते है।
Focus on Data
जब आप classes यूज़ करते है तो program का पूरा focus data पर होता है। आप data के लिए ही methods create करते है और data को ही hide करते है। Classes data focused approach है जो की useful software बनाने के लिए बहुत महत्वपूर्ण है।
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 किया गया है।
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 के बारे में जानने का प्रयास करते है।
Instance Variables/Methods
जो variables और methods class के object से ही access किये जाते है उन्हें instance variables या methods कहा जाता है।
Static Variables/Methods
Static variables और methods को बिना objects के access किया जा सकता है। किसी भी variable या method को static बनाने के लिए static keyword यूज़ किया जाता है। Static members को access करने के लिए class के नाम के आगे (.) operator लगा कर उस member का नाम लिखा जाता है।
Command Line Argument
Main method के parameters के रूप में string array होता है। ऐसा command line argument देने के लिए किया गया है। Command line arguments वो arguments होते है जो आप program को run करते समय ही दे सकते है। कई बार ऐसा होता है की आप program run होते समय ही कुछ argument देना चाहते है ताकि आपका program उन arguments के according run हो सके।