什么是“模板方法模式””在Cocoa与对象C? (语言比较思维)
这是模板方法模式,Java和C ++可以通过虚函数轻松实现。对象C如何实现这种模式?可可触摸(iOS)中的任何示例?
没有找到相关结果
已邀请:
3 个回复
缮记箔
上面的代码强制
的子类通过在调用其中一个基类实现时抛出异常来覆盖“虚拟”方法。实际上,这会将测试从编译器阶段(如在C ++或Java中)移动到运行时阶段(其中类似的事情通常在Objective-C中完成)。 如果您确实要强制执行不允许子类覆盖
方法的规则,则可以尝试(*)从
方法中验证正确的实现:
(*)请注意,此代码不会导致对重新实现
的子类的100%坚如磐石的防御,因为Objective-C的本质将允许子类覆盖
以产生正确的结果。
哩翔购
方法。
草票
在这个例子中,dowork()是一个抽象函数,它应该由所有子类实现,并且这个模式主要用在Cocoa框架中。 希望它能帮助您理解“模板方法模式”。