Abstract Class in C++:
जैसाकि हमने पहले भी कहा है कि Abstract Class एक ऐसी Class होती है जिसके Instance या Objects Create नहीं किए जा सकते हैं, बल्कि ये Classes एक Template के रूप में अन्य Derived Classes Create करने के लिए Use की जाती हैं। C++ में Abstract Classes को Use करने के लिए Pure Virtual Functions को Use करना जरूरी होता है। यानी Abstract Classes को C++ Pure Virtual Functions को Use करने के लिए बाध्य करता है।
हमने shape Class के उदाहरण में देखा था कि हमने shape Class को केवल Derived Classes Create करने के लिए Use किया था। हमने shape Class के Objects Create नहीं किए थे। इसलिए shape Class को हम Abstract Class कह सकते हैं।
जबकि person Class में हमने सामान्य persons जैसे कि Administrators, Trusty आदि General लोगों के लिए अलग Class का निर्माण नहीं किया है, इसलिए हम इस person Class को Generic Class कहते हैं।
Abstract Classes का प्रयोग कई स्थितियों में किया जाता है। जैसे एक Company Sports Car या कोई Truck या Ambulance बना सकती है, लेकिन वह कोई Generic Vehicle नहीं बना सकती है। Company कोई Vehicle बनाए, इससे पहले Company को उस Vehicle की Details को जानना जरूरी होता है, कि उसे किस प्रकार का Vehicle बनाना है। इसी तरह से sparrows, wrens व robins आकाश में उडते हैं, लेकिन हम किसी Generic Bird को आकाश में उडते हुए नहीं देखते।
कई स्थितियों में हमें एक Generic Base Class की जरूरत होती है, जबकि कई स्थितियों में नहीं होती। अक्सर Abstract Classes को Use करना एक अच्छा विचार होता है। Abstract Classes को Treat करना ज्यादा आसान होता है, क्योंकि तब हमें पता होता है कि उस Abstract Class का कोई Object Create नहीं किया जा सकता है। person Class के उदाहरण में person Class को Abstract करके हम इससे एक Miscellaneous Class Derive कर सकते हैं और इस Class से उन Objects को Create कर सकते हैं जो कि student या teacher Class के नहीं हैं।
No comments:
Post a Comment