Object Oriented Programming Concepts in Java

Object Oriented Programming Concepts in Java: Object Oriented Language का मूलभूत विचार ये है कि जिस समस्या का समाधान Computer पर प्राप्त करना है उस समस्या के मूल Data और उस Data पर काम करने वाले Functions को Combine करके एक Unit के रूप में ले लिया जाता है। इस Unit को Object कहा जाता है।

एक Object के Data पर काम करने के लिये लिखे गए Operations या Functions को Java में Methods कहा जाता है। ये Methods किसी Object के Data को Access करने का एक मात्र माध्यम होते हैं। यदि आप किसी Object के अन्दर रखे किसी Data को Read करना चाहते हैं, तो आपको इसी Object के अन्दर Define किए गए उस Method को Use करना पडता है, जिसे उस Object के Data को Access करने के लिये ही परिभाषित किया गया है।

यही एक Method होता है जिसकी मदद से आप उस Object के Data को Read कर सकते हैं। आप सीधे ही Data के साथ किसी प्रकार की प्रक्रिया नहीं कर सकते हैं क्योंकि Data Hidden रहता है। इसलिये किसी प्रकार से अचानक हुए परिवर्तन से Data सुरक्षित रहता है। Data व Data को Use कर सकने वाले Functions या Operations का एक साथ एक ही Unit के रूप में होना Encapsulation कहलाता है। जबकि Data का Hidden रहना यानी Data HidingEncapsulation Object Oriented Programming का मूल तथ्य या Key Terms है।

यदि आप किसी Data को Modify करना चाहते हैं, तो आपको पता होना चाहिए कि कौनसा Method उस Data पर Required Operation करने की क्षमता रखता है। कोई भी अन्य Method उस Data को Access नहीं कर सकता है। ये प्रक्रिया Program को लिखना, Debug करना व Maintain करना आसान बनाती है।

एक Java का प्रोग्राम विभिन्न प्रकार के ढेर सारे Objects का बना होता है, जो कि अपने-अपने Methods द्वारा आपस में Communication करते हैं। Java व कई अन्य OOP Languages में Member Functions को Methods और Data Item को Instance Variable कहा जाता है। किसी Object के Methods को Use करना उस Object को Message Send करना कहलाता है।

हम एक उदाहरण द्वारा Object Oriented Programming System (OOPS) Concept को समझने की कोशिश करते हैं। मानलो कि एक बडा प्रीति-भोज (Party) का समारोह है जिसमें सभी मेहमान किसी Dining Table के चारों ओर बैठे हैं। जो भी खाना Table पर रखा है हम उसे Data कह सकते हैं और उस Table के चारों ओर बैठे लोगों को हम Functions या Operations मान सकते हैं।

“Object के Operations हमेंशा अपने Data यानी Attributes की State में परिवर्तन करते हैं।”

इस उदाहरण में Data (खाना) पर खाना खाने का Operation Perform किया जा रहा है। इस व्यवस्था में जब भी किसी को Table पर रखे विभिन्न प्रकार के व्यंजनों में से कुछ लेना होता है, तो वह स्वयं ही उस व्यंजन तक पहुंचता है और उसे उपयोग में ले लेता है। किसी पडौसी मेहमान से कोई भी व्यंजन Pass करने को नहीं कहता। Procedural Program का भी यही तरीका होता है।

ये तरीका तब तक बहुत ठीक है, जब तक कि खाना खाने वाले मेहमानों की संख्‍या सीमित हो। लेकिन यदि मेहमानों की संख्‍या अधिक हो तो ये तरीका ठीक नहीं कहा जा सकता है। क्योंकि जब मेहमान अधिक होंगे तो Table भी बडा होगा और खाने के विभिन्न सामान पूरे Table पर काफी दूर-दूर होंगे। ऐसे में यदि कोई मेहमान किसी दूर रखे व्यंजन तक पहुंचने की कोशिश करता है, तो हो सकता है कि कोशिश करते समय उसके Shirt की Sleeves किसी दूसरे मेहमान के खाने में चली जाए या ऐसा भी हो सकता है कि कई मेहमान एक साथ किसी एक ही व्यंजन पर हाथ बढाएं और व्यंजन Table पर गिर कर खराब हो जाए।

यानी यदि मेहमानों की संख्‍या काफी ज्यादा हो तो एक ही Table पर भोजन करना एक परेशानी वाला काम होगा। एक बडे Procedural Program में भी यही होता है।

इस समस्या के समाधान के रूप में यदि कई छोटे-छोटे Tables हों और उन पर एक सीमित मात्रा में मेहमान हों और सबके पास उनका अपना भोजन हो, तो ये एक अच्छी व्यवस्था हो सकती है। इस छोटे Table पर सभी मेहमान किसी भी व्यंजन पर आसानी से पहुंच सकते हैं। यदि कोई मेहमान किसी अन्य Table पर रखे किसी व्यंजन को लेना चाहता है तो सम्भवतया वह किसी अन्य मेहमान से उस व्यंजन को लाने के लिये कह सकता है।

ये तरीका Object Oriented Programming का है जिसमें हरेक छोटी Table को एक Object कहा जा सकता है। हरेक Object में उसका स्वयं का Data और Data पर Perform होने वाला Operation या Function होता है।

Data व Operations के बीच होने वाले विभिन्न लेन-देन अधिकतर Object के अन्दर ही होते हैं लेकिन आवश्‍यकतानुसार ये भी सम्भव है कि किसी अन्य Object के Data को भी Use किया जा सके। चूंकि एक Object के Data को केवल वही Object Access कर सकता है, इसलिए यदि किसी Object A के Data को कोई दूसरा Object B Access करना चाहता है, तो वह Object B, Object A से Data को Access करने के लिए कहता है। इस प्रक्रिया को Message Passing करना कहते हैं। Object A Object B की Request को पूरा करता है और अपने Data को Access करके करने के लिए उस दूसरे Object B को दे देता है। (Object Oriented Programming Concepts in Java)

Procedural Programming Paradigm Example
Differences between C++ and Java Programming Language

Java Programming Language in Hindiये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook Java in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

Java Programming Language in Hindi | Page: 682 | Format: PDF

BUY NOW GET DEMO REVIEWS