子类需要知道特定事件何时与其超类一起发生,但超类有多种方法可以打破新闻。这是2:
我想知道最佳做法是否会推荐其中一种方法。
P.S。当我想到这个问题时,我正在使用ActionScript。
答案 0 :(得分:2)
这取决于您尝试解决的问题的性质。子类完成的处理是否需要异步?如果是这样,那就是支持基于事件的设计的论据。那些不是你班级子类的东西想知道吗?这是支持基于事件的设计的另一个论点。除此之外,最简单的方法是提供一个抽象的方法,作为逻辑的钩子,因为这是程序员所期望的很多(根据我的经验)。
答案 1 :(得分:2)
这里没有“最好”的方法,两者都有不同的语义,我将在这里概述。
覆盖方法:
<强>活动:强>
答案 2 :(得分:0)
OOP是关于向对象发送消息的对象。最好的方法是定义一个方法并覆盖它。
当然,你提出了一个错误的二分法:当你派遣一个事件时,它最终会调用一些类的方法,这可能会被覆盖。
答案 3 :(得分:0)
抽象方法最好。通过此次活动,您将引入不必要的复杂性。