我想了解的是什么是最佳做法,何时将事件与委托一起使用以及何时使用抽象类,方法和继承
- 我知道委托和事件之间是松散耦合的,因此可以使代码更灵活。
- 我还发现,“
event
关键字可确保多个线程之间存在同步,而Delegate
类不会执行此同步。如果有多个线程去添加处理程序,同时将event
关键字添加到一个事件中“ source link
现在对我来说更清楚了。如果还有其他信息,请分享。
答案 0 :(得分:1)
简单来说,代表和事件是松散耦合的函数,这是与紧密耦合的抽象方法相比的优势之一。
让我来看一下使用抽象的问题。考虑一个客户端类是从Abstract类派生的。如果要更改Abstract类(比如说,您将在Abstract类中添加一个新方法),则客户端类应进行相应更改,因为其紧密耦合。为了克服这个缺点,我们可以采用松散耦合的功能,例如“代表”和“事件”。