जावा में एक सार वर्ग बनाएँ Class

डौग लोवे द्वारा

एक सार वर्ग जावा में एक वर्ग है जिसमें एक या अधिक शामिल हैं सार तरीके , जो बिना किसी निकाय के विधि घोषणाएं हैं - यानी, निष्पादन योग्य कोड के बिना जो कक्षा या विधि को लागू करता है। एक अमूर्त विधि एक विधि के लिए एक प्रोटोटाइप की तरह है, जो विधि के रिटर्न प्रकार और पैरामीटर सूची की घोषणा करती है लेकिन विधि का वास्तविक कार्यान्वयन प्रदान नहीं करती है।



आप एक अमूर्त वर्ग को तत्काल नहीं कर सकते। हालाँकि, आप एक उपवर्ग बना सकते हैं जो एक अमूर्त वर्ग का विस्तार करता है और अमूर्त वर्ग द्वारा परिभाषित सार विधियों का कार्यान्वयन प्रदान करता है। आप उपवर्ग को तुरंत चालू कर सकते हैं।



एक अमूर्त विधि बनाने के लिए, आप संशोधक निर्दिष्ट करेंसारऔर विधि निकाय को अर्धविराम से बदलें:

public abstract return-type method-name(parameter-list);

यहाँ एक उदाहरण है:



 public abstract int hit(int batSpeed);

एक अमूर्त वर्ग बनाने के लिए, आप का उपयोग करते हैंसारकक्षा घोषणा पर और कम से कम एक सार विधि शामिल करें। उदाहरण के लिए:

public abstract class Ball { public abstract int hit(int batSpeed); }

आप इस तरह एक अमूर्त वर्ग से उपवर्ग बना सकते हैं:

public class BaseBall extends Ball { public int hit(int batSpeed) { // code that implements the hit method goes here } }

जब आप एक अमूर्त वर्ग को उपवर्गित करते हैं, तो उपवर्ग को अमूर्त वर्ग में प्रत्येक अमूर्त विधि के लिए एक कार्यान्वयन प्रदान करना चाहिए। दूसरे शब्दों में, इसे प्रत्येक अमूर्त विधि को ओवरराइड करना होगा।



सार वर्ग तब उपयोगी होते हैं जब आप एक सामान्य प्रकार बनाना चाहते हैं जिसका उपयोग दो या अधिक उपवर्गों के लिए सुपरक्लास के रूप में किया जाता है, लेकिन सुपरक्लास स्वयं एक वास्तविक वस्तु का प्रतिनिधित्व नहीं करता है। यदि सभी कर्मचारी या तो वेतनभोगी हैं या प्रति घंटा, उदाहरण के लिए, एक सार बनाना समझ में आता हैकर्मचारीवर्ग और फिर इसे आधार वर्ग के रूप में उपयोग करेंवेतनभोगी कर्मचारीतथाप्रति घंटा कर्मचारीउपवर्ग

यहाँ अमूर्त वर्गों के बारे में कुछ अतिरिक्त विवरण दिए गए हैं:

  • एक अमूर्त वर्ग में सभी विधियों को सार नहीं होना चाहिए। एक वर्ग अपने कुछ तरीकों के लिए कार्यान्वयन प्रदान कर सकता है लेकिन अन्य नहीं। वास्तव में, भले ही किसी वर्ग में कोई सार विधि न हो, फिर भी आप इसे सार के रूप में घोषित कर सकते हैं। (उस स्थिति में, हालांकि, कक्षा को तत्काल नहीं किया जा सकता है।)

  • एक निजी विधि अमूर्त नहीं हो सकती। सभी अमूर्त विधियां सार्वजनिक होनी चाहिए।

  • एक वर्ग दोनों नहीं हो सकतासारतथाअंतिम.

दिलचस्प लेख