.net 我应该继承还是订阅事件?

.net 我应该继承还是订阅事件?,.net,winforms,oop,.net,Winforms,Oop,如果我为我的Windows应用程序创建了一个抽象基表单,那么在加载应用程序的表单时,我可以使用它来做一些普通的事情。我还可以覆盖OnLoad方法,或我订阅加载事件(基本表单加载) 从设计和性能的角度来看,哪种方法更好?除非我需要修改OnLoad()行为,否则我更喜欢使用订阅加载事件。它比较慢,但我认为它在概念上更正确。 通常,如果要实现基类(即:子类化表单),最好重写基类方法 出于多种原因,这是更好的方法-这些方法通常首先发生,并且总是有保证的顺序(如果您使用事件,其他方法可以通过可能干扰您的方

如果我为我的Windows应用程序创建了一个
抽象基表单
,那么在加载应用程序的表单时,我可以使用它来做一些普通的事情。我还可以
覆盖
OnLoad
方法,我订阅
加载
事件(
基本表单加载


从设计和性能的角度来看,哪种方法更好?

除非我需要修改OnLoad()行为,否则我更喜欢使用订阅加载事件。它比较慢,但我认为它在概念上更正确。

通常,如果要实现基类(即:子类化表单),最好重写基类方法

出于多种原因,这是更好的方法-这些方法通常首先发生,并且总是有保证的顺序(如果您使用事件,其他方法可以通过可能干扰您的方法的其他订阅者运行)。此外,这样做的开销(稍微)更少

不过,最好的理由可能是,这是公认的做法,它使您的代码更易于维护,尤其是其他开发人员