में वर्चुअल फ़ंक्शन को कैसे लागू करें सी # में, हमारे पास अमूर्त विधि के बारे में अवधारणा है, और जावास्क्रिप्ट में इसे कैसे लागू करें।जावास्क्रिप्ट
function BaseClass() {
this.hello = function() {
this.talk();
}
this.talk = function() {
alert("I'm BaseClass");
}
};
function MyClass() {
this.talk = function() {
alert("I'm MyClass");
}
BaseClass.call(this);
};
MyClass.prototype = new BaseClass();
var a = new MyClass();
a.hello();
कैसे समारोह नमस्ते() BaseClass में MyClass से() फ़ंक्शन कर फोन जब वस्तु MyClass का एक उदाहरण है: उदाहरण के लिए, मैं एक उदाहरण है। चेतावनी परिणाम "मैं MyClass" होना चाहिए। क्रिप्या मेरि सहायता करे। धन्यवाद।
मुझे लगता है कि आपका मतलब 'वर्चुअल'/'ओवरराइड' था, न कि 'अमूर्त'। – HackedByChinese
हां, बेस का फ़ंक्शन वर्चुअल फ़ंक्शन होना चाहिए ताकि उत्तराधिकारी वर्ग इसे ओवरराइड कर सके। –
मुझे यकीन नहीं है कि मैं समझता हूं। बस 'BaseClass.call (यह) हटाएं;' लाइन और यह काम करता है, क्योंकि 'this.talk = ...' मूल विधि को ओवरराइड करता है। या आप 'MyClass' को 'BaseClass.call (...)' (शुरुआत में, अंत में नहीं) के साथ शुरू कर सकते हैं। लेकिन यदि आप 'कॉल' का उपयोग कर रहे हैं तो प्रोटोटाइप को परिभाषित करने की कोई आवश्यकता नहीं है। – freakish