मेरे पास एक ऐसा एप्लिकेशन है जहां मूल ऑब्जेक्ट में सत्यापन करने के लिए एक विधि है और प्रत्येक बच्चा अतिरिक्त सत्यापन करने के लिए विधि को ओवरराइड करता है। की तरह कुछ:सशर्त रूप से ब्लॉक विधि ओवरराइड
class Parent {
virtual void DoValidations (Delegate addErrorMessage) {
//do some validations
}
}
class Child : Parent {
override void DoValidations (Delegate addErrorMessage) {
base.DoValidations(addErrorMessage); //the parent method is always called
//do some extra validations
}
}
मैं एक नया "IsDisabled" संपत्ति है कि जब सच विधि किसी भी सत्यापन प्रदर्शन नहीं करेगा गयी।
class Parent {
boolean IsDisabled;
virtual void DoValidations (Delegate addErrorMessage) {
if (IsDisabled)
return;
//do some validations
}
}
मैं भी है कि हर बच्चे के लिए, यदि "IsDisabled" संपत्ति सच है, अतिरिक्त सत्यापन नहीं की जाती है चाहता हूँ। यहां उपयोग करने के लिए बेहतर पैटर्न क्या है?
शायद, 'DoValidations' 'public' होना चाहिए। –
मुझे नहीं पता। ओपी के लिए यह पता लगाने के लिए है। –
हां, ज़ाहिर है। –