Concepts of Object Oriented Programming

Q. What are the concepts of object oriented programming ?

Ans. : OOPs के कुछ concepts जो निम्नलिखित है –




Object : Real world की जितनी भी entities हैं उन्हें object कहा जाता है, अर्थात संसार में जितनी भी वस्तुएं पायी जाती हैं जिनके कुछ attributes (जैसे किसी भी चीज का name, उसका color, उसकी size, etc.) और behaviour (जैसे किसी भी वस्तु का कार्य (functinality) जैसे bike का start होना, उसके gear को बदलना)  उन्हें object कहा जाता है | यदि एक software development की नजर से देखा जाये तो –
यदि कोई bike बनाने वाली कंपनी है और वह अपने कंपनी के प्रोडक्ट्स के production और उसके लेन-देन के details को manage करने के लिए एक software बनवाना चाहता है | इस software को बनाने के लिए programmer इस कंपनी में बनने वाले प्रत्येक bike को एक object के रूप में मानता है | प्रत्येक bike का अपना name, model no., उसका color, etc. होता है जो उसके attributes कहलाते हैं, और इन्हें किसी software में implement करने के लिए variables का use किया जाता है जो इन सभी datas हो store करते हैं | इसी प्रकार datas को store, access, delete, और update करने के लिए कुछ methods (functions) बनाये जाते हैं जिन्हें behaviour कहते हैं |   

Class : साधारण भाषा में एक class objects का समूह होता है, जो एक ही प्रकार के गुणों को रखते हैं | दूसरे शब्दों में कहे तो class एक ही प्रकार के objects का समूह होता है, और प्रत्येक object के attributes और behaviour भी same होते हैं| जैसे Car, Truck, Bike, Cycle आदि Vehical class के objects हैं |

Encapsulation : data और methods को एक single unit (class) में इकठ्ठा करके रखने के process को encapsulation कहते हैं | OOPs में data और method एक साथ मिलकर एक single unit बनाते हैं जिसे class कहते हैं | किसी भी class के data को उस class के method के अतिरिक्त कहीं से भी access नहीं किया जा सकता है | अर्थात किसी भी class के data को केवल उस class के method ही access कर सकते हैं | इस प्रकार data को direct access से होने से बचाना ही data hiding कहलाता है |

Data Abstraction : abstraction एक ऐसा concept है, जिसके अनुसार किसी भी software के केवल essential (जरुरी) features ही user को दिखाए जाते हैं बाकी के unnecessary implementations को user से hide कर दिया जाता है | जैसे user किसी भी software के केवल user interface को ही देख और use कर पाता है, बाकी उस software की internal functionality को user न तो कभी देख पाता है और न ही समझ पाता है की वह कैसे बना है या फिर कैसे कार्य कर रहा है |

Inheritance : किसी एक class (child-class/sub-class) में किसी दूसरे class (parent-class/super-class) के सभी या कुछ properties (जैसे fields या method) को use करना ही inheritance कहलाता है |  इसी गुण के कारण ही एक class का object किसी दूसरे class के objects की properties को access कर सकता है | यह concept code reusability को बढ़ावा देता है |अर्थात किसी भी class में बिना modification किये ही उस class के गुणों को बढाया जा सकता है |


Polymorphism : इस concept के अनुसार किसी भी class में एक ही name के एक से अधिक methods को बनाया जा सकता है, लेकिन इनके parameters या type में अंतर होना चाहिए | compiler methods को आसानी से पहचान सके इसके लिए जरुरी है कि class के सभी methods में कुछ न कुछ अंतर जरुर होना चाहिए | जैसे void area(int radius), void area(int l,int b); यहाँ दोनों methods के name same हैं लेकिन उनके parameters में अंतर है |

No comments:

Post a Comment

Concept of OOPs

Concept of Multithreading

·      Java Threads : thread जावा language की एक ऐसी facility है जो किसी single process में एक से अधिक activities को perform करन...