استثناء من قاعدة الفصل
-
25-09-2019 - |
سؤال
لدي فئة أساسية ، وأود أن ألتقط جميع استثناءات الفئة المشتقة داخل الفصل الأساسي ، هل هذا ممكن؟
لن تعرف ما هي الأساليب من الفئة المشتقة.
المحلول
تحتاج إلى تقديم المزيد من التفاصيل حول السيناريو المحدد. ومع ذلك ، على سبيل المثال ، إذا كان لديك فئة تجريدية أساسية توفر عقدًا وترغب في الحصول على جميع الاستثناءات المحتملة التي ألقيتها الفئات المشتقة عند استدعاء عقد الفئة الأساسية ، يمكنك القيام بشيء مثل هذا:
public abstract class Base
{
protected abstract void InternalFoo();
protected abstract void InternalBar();
public void Foo()
{
try { this.InternalFoo(); }
catch { /* ... */ }
}
public void Bar()
{
try { this.InternalBar(); }
catch { /* ... */ }
}
}
نصائح أخرى
بواسطة استدعاء الفصل تقصد فئة مشتقة ، أو أساليب استدعاء فئة غير مرتبطة من فئة مستمدة من قاعدتك؟
أعتقد أنه يمكنك القيام بذلك تحويل قاعدتك إلى فصل وكيل. انظر وكيل ديناميكي مثال.
لا تنتمي إلى StackOverflow