Skip to main content







Java in hindi : Introduction  

History of Java 


Java एक general purpose object oriented programming लैंग्वेज है। Sun Micro-systems ने java 1991 में U.S. में बनायीं थी। Java का नाम पहले oak रखा गया था लेकिन बाद में इसे change करके java किया गया था। Java James Gosling ने develop की थी। Java को consumer electronics जैसे की TV, VCR आदि software बनाने के लिए develop किया गया था। 
Java का सबसे important और popular feature था की java platform independent थी। क्योंकि java किसी एक particular hardware या operating system के लिए नहीं बनायीं गयी थी। Java में बनाये हुए program किसी भी system पर execute किये जा सकते है। Java का ये feature java को आज भी सबसे popular लैंग्वेज बनाता है। 

Java version 

. ЈDK  Alpha and Beta (1995)

.JDK 1.0 (23 Jan , 1996)

.  JDK 1.1(19 Fe, 1997)
.  J2SE 1.2 (8 Dese, 1998)
 . J2SE 1.3 (8 May, 2000)
 . J2SE 1.4 (6 Feb, 2002)
 . J2SE 5.0 (30 Feb, 2004)
 . Java SE 6 (11 Dese , 2006)
 . Java SE 7 (28 July, 2011)
 . Java SE 8 (18 March, 2014)

Features of Java 
Java के बहुत सारे features है। एक अच्छा java programmer बनने के लिए आपको ये सभी features पता होने चाहिए। आइये java के कुछ popular features के बारे में जानने का प्रयास करते है। 

COMPILED AND INTERPRETED 

ज्यादातर programming languages या तो compiled होती है या interpreted होती है। लेकिन java इन दोनों approaches को combine करती है और एक two stage system बनाती है। पहले तो java आपके program को compiler करके byte code generate करती है।
Byte code machine instructions नहीं होते है। इसलिए java second stage में bytecode को interpret करके machine code generate करती है, जिसे directly execute किया जा सकता है। 

PLATFORM INDEPENDENT

Java को bytecode platform independent बनाता है। जब आप किसी java program को compile करते है तो वो byte code में convert हो जाता है। ये byte code किसी भी मशीन या operating system पर नहीं चल सकता है। ये सिर्फ JVM (Java Virtual Machine) पर चलता है। 
Java के program को run करने के लिए आपको अपने operating system पर JVM install करना पड़ता है। हर operating system के लिए अलग JVM होता है लेकिन काम सभी एक ही करते है। और वो काम होता है उस operating system के लिए bytecode को machine code में convert करना।
इसलिए किसी एक operating system के JVM द्वारा generate किया गया bytecode कोई भी दूसरी JVM पर run किया जा सकता है। और फिर JVM उस operating system के लिए machine code generate कर देती है। 
इसलिए अलग अलग machines के लिए अलग अलग machine code generate होता है लेकिन वो एक ही byte code से generate होता है क्योंकि आपका program पहले byte code में convert होता है। 

OBJECT ORIENTED 

Java एक true object oriented programming language है। Java में almost सब कुछ object है। Java में आपकी सारी information objects के रूप में store होती है। 

ROBUST AND SECURE 

Java एक robust language है। Java में बनाया हुआ कोई भी program अलग अलग environments में अलग अलग technologies के साथ बिना crash हुए काम कर सकता है। Java programs कभी crash नहीं होते है। ये बहुत ही reliable language है। 
Java में security JVM के द्वारा provide की जाती है। Machine code generate करने से पहले JVM पर कुछ tests रन करके invalid combinations को detect करती है। 

DISTRIBUTED

Java से आप distributed applications क्रिएट कर सकते है। Distributed applications वो applications होती है जो अलग अलग networks पर होती है और एक साथ मिलकर task perform करती है। Java में RMI के through आप दूसरे network पर available applications से interact कर सकते है। 

SIMPLE AND FAMILIAR 

Java एक simple language है। Java के बहुत से features c और c++ से लिए गए है। Java का syntax c और c++ के जैसा है। जैसे की variable declarations, control statements और method declarations आदि। ये सब java को easy तो understand बनाते है। क्योंकि java c और c++ को ध्यान में रख कर बनायीं गयी है इसलिए ज्यादातर programmers को familiar लगती है। 

MULTI-THREADED AND INTERACTIVE 

Java एक multithreaded language है। कोई भी java program एक साथ कई tasks complete कर सकता है। ये feature java को fast और interactive बनाता है। 

HIGH PERFORMANCE 

Java की performance बहुत impressive है। Java की speed को main reason byte code है। Java का architecture इस तरह से design किया गया है की java में runtime पर overhead बहुत कम होता है। 

DYNAMIC AND EXTENSIBLE 

Java एक dynamic language है। Java run time के दौरान libraries, methods और classes से dynamic linking करने में सक्षम है। Java को नयी technologies के साथ आसानी से यूज़ किया जा सकता है। 

EASE OF DEVELOPMENT

 Java में programs develop करना बहुत easy है। Java आपको built इन libraries provide करती है जिसमे आपके यूज़ के लिए important classes होती है। इससे programmer का overhead कम हो जाता है। Programmer इन libraries को access करके आसानी से software develop कर सकता है। 

Object Oriented Principles of Java 

जैसा की मैने आपको बताया java एक object oriented language है। Java भी सभी object oriented programming languages की तरह object oriented principles को follow करती है। आइये इन principles के बारे में जानने का प्रयास करते है। 

ENCAPSULATION

Encapsulation को data hiding भी कहते है। Encapsulation में आप private variables declare करते है और उन्हें public methods के through access करते है आपके variables को आपकी ही class के methods access कर सकते है। दूसरी कोई भी class आपके variables को access नहीं कर सकती है। इस प्रकार आप data को hide भी करते है और यूज़ भी करते है। 
Encapsulation का एक और मतलब होता है data और code को एक unit में bind करना और बाहर से access को रोकना। ऐसे आपका ऐसे आपके variables और methods एक ही unit में bind हो जाते है। Java 3 level की data hiding provide करती है। 
  • public – आपके public class members को दूसरी classes access कर सकती है।  
  • private – आपके private class members को दूसरी कोई भी class access नहीं कर सकती है।  
  • protected – केवल आपकी class को inherit करने वाली class ही आपके class members को access कर सकती है। 

    INHERITANCE 

    इस principle के through आप एक class के variables  को दूसरी class में access कर सकते है। ऐसा करने से आपको एक जैसे methods को बार बार लिखने की जरुरत नहीं होती है। इससे computer की memory और programmer का time दोनों बचता है। Java में multiple inheritance allow नहीं है। एक class सिर्फ एक ही class को inherit कर सकती है। ये कमी जावा interfaces के through पूरी करती है।
                                                                             

    POLYMORPHISM 

    Polymorphism का मतलब होता है “एक नाम और कई काम”। Polymorphism के through आप एक interface से situation एक according अलग अलग actions ले सकते है। जैसे की method overloading में किया जाता है। 

    ABSTRACTION 

    Abstraction java का बहुत important concept है। जब आप बाइक चलाते है तो आपको ये पता नहीं होता है की ये bike कैसे काम कर रही है। आप बस उसे चलाते है। उसकी internal working आपको पता नहीं रहती है। Abstraction का भी same concept है। आप अपने software की internal working यूज़र को शो नहीं करते है। बस यूज़र को वो interface provide करते है जिससे की वो interact करेगा।

    Java Development Tools

    Java में software कुछ built in development tools की मदद से बनाया जाता है। आइये इन development tools के बारे में जानने का प्रयास करते है। 

    JDK (JAVA DEVELOPMENT KIT)

    JDK एक environment होता है जिसमे आप कोई भी java program क्रिएट कर सकते है और उसको execute करवा सकते है। JDK में JRE होता है जो किसी भी java program के execution के लिए responsible होता है। 

    JRE (JAVA RUNTIME ENVIRONMENT)  

    JRE आपके program के execution के लिए responsible होता है। JRE कुछ classes और libraries का group होता है जो एक साथ मिलकर program को execute होने के लिए environment क्रिएट करते है। 
    JRE के 2 काम होते है। 
    1. Program में main मेथड को ढूंढना। 
    2. Program का execution start करना। 

    JVM (JAVA VIRTUAL MACHINE)

    जैसा की आप जानते है की जब आप किसी java program को compile करते है तो वो पहले bytecode में convert होता है। इसके बाद वो bytecode machine code में convert किया जाता है। JVM एक environment या machine होती है जो bytecode को machine code में convert करती है। ये JRE के साथ मिलकर काम करती है।


    Comments

    Post a Comment

    Popular posts from this blog

    Java Inheritance Introduction to Java Inheritance  Inheritance का ऐसा Machanisam है जिसमे एक old class से new class create किया जाता हे इस के द्वारा old class की properties को new class में प्रयोग किया जाता हे old class की properties को new class में प्रयोग करने के लिए old class की inherit करना होता है| और class को inherit करने के लिए derivation public, private and protected का प्रयोग किया जाता है|  inheritance में old class को base class या parent class or super class कहा जाता है, जिस class की property ली जाती है| और नई class को child class या derive class या sub class कहा जाता है, जिस class के द्वारा property ली जाती है| ऐसा करने के लिए जो class methods को access करना चाहती है उसे दूसरी class की sub class बनना होगा। Sub class बनने के लिए आपकी class को उस दूसरी class को extend करना होगा। इसे ही inheritance कहते है।  Inheritance से आप एक ही code को बार बार लिखने की उलझन से बच जाते है। Inheritance की इस खूबी को re-usability कहते है। यान...
    Java Applets  Introduction to Java Applets  Applet एक java program होता है जो browser में run होता है। ये एक ऐसा प्रोग्राम होता है जो HTML के साथ काम कर सकता है। इसे HTML code में ही include कर लिया जाता है। Java program की file और HTML program की files अलग अलग होती है। HTML में java program को load करने के लिए आप <applet> tag यूज़ करते है। जब कोई भी यूज़र इस HTML पेज को browser पर देखता है तो HTML के साथ java program भी load हो जाता है। लेकिन इसके लिए आपको applet (java program) को और HTML file को एक ही server पर save करना पड़ता है।  Applet ऐसा java program होता है जो Applet class को extend करता है। Applet program को .class extension से save किया जाता है। जब कोई यूज़र browser में applet को देखता है तो applet का code उस user की machine में download हो जाता है। पहले applet का code user की machine में download होता है फिर applet browser में रन होता है। इसलिए आप कह सकते है की applets client side applications होती है।Applets को run होने के लिए...
    Introduction to C Arrays  मान लीजिये आप एक ऐसा प्रोग्राम बना रहे है जो employees का नाम computer में store करता है। अब मान लीजिये आपकी company में 200 employees है। आप इन 200 employees के नाम किस तरह से store करेंगे। यदि आप सोच रहे है की आप 200 variables create करेंगे तो ये एक बहुत ही complex approach होगी।  इसमें आपको program बनाने में बहुत समय लग जायेगा और program भी हद से ज्यादा बड़ा हो जायेगा। ये आपके time और computer memory space दोनों का wastage है। और साथ ही आप इतने सारे variables के नाम सोच भी नहीं सकते है और यदि सोच भी लेंगे तो program में यूज़ करने के लिए उन्हें याद तो definitely नहीं रख सकते है।   मेरे पास आपके लिए इससे भी better approach है और उस approach को C language में array कहते है। Array similar type की values का collection होता है। Similar type से यँहा मेरा मतलब एक ही तरह के data type जैसे की int, float, char आदि की values से है।   C आपको arrays के द्वारा ऐसी facility provide करती है की...