] हालाँकि, इस तरह की विरासत में मिली घटनाओं को बढ़ाने के लिए संकलक त्रुटियों से बचने के लिए एक विशिष्ट दृष्टिकोण की आवश्यकता होती है। { पब्लिक इवेंट इवेंटहैंडलर लोडिंग; पब्लिक इवेंट इवेंटहैंडलर समाप्त; }
एक व्युत्पन्न वर्ग में, लोडिंग इवेंट को बढ़ाने का प्रयास:
this.loading (यह, नया EventHandler ()); । इसके बजाय, आधार वर्ग में परिभाषित विशिष्ट तरीकों को लागू करके विरासत में मिली घटनाओं को उठाया जाना चाहिए। इसे प्राप्त करने के लिए, निम्नलिखित चरण आवश्यक हैं:
आधार वर्ग में संरक्षित ईवेंट-राइजिंग तरीके बनाएं:
आधार वर्ग में संरक्षित तरीकों को परिभाषित करें जो घटनाओं को बढ़ाने के लिए जिम्मेदार हैं। उदाहरण के लिए:
public class BaseClass { public event EventHandler Loading; public event EventHandler Finished; }
सार्वजनिक वर्ग baseclass { पब्लिक इवेंट इवेंटहैंडलर लोडिंग; पब्लिक इवेंट इवेंटहैंडलर समाप्त; संरक्षित आभासी शून्य onloading (EventArgs e) { EventHandler हैंडलर = लोडिंग; if (हैंडलर! = null) { हैंडलर (यह, ई); } } संरक्षित वर्चुअल शून्य onfinished (EventArgs e) { EventHandler हैंडलर = समाप्त; if (हैंडलर! = null) { हैंडलर (यह, ई); } } … उदाहरण के लिए:
public class BaseClass { public event EventHandler Loading; public event EventHandler Finished; }सार्वजनिक वर्ग derivedClass: baseclass { सार्वजनिक शून्य dosomething () { // लोडिंग इवेंट बढ़ाएं Onloading (eventArgs.empty); // समाप्त घटना को बढ़ाएं Onfinished (eventargs.empty); } }
इस दृष्टिकोण का पालन करके, विरासत में मिली घटनाओं को सुरक्षित और कुशलता से व्युत्पन्न वर्गों में c#में उठाया जा सकता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3