覆盖方法的Objective-C约定

时间:2012-05-10 14:52:13

标签: objective-c oop override

在Java中,当您覆盖某个方法时,建议您(几乎强制)添加@Override注释。在Objective-C世界中是否有一个约定(在评论中或通过其他机制)覆盖的方法?

3 个答案:

答案 0 :(得分:3)

没有。 Objective-C中的所有方法都是通过Objective-C的消息发送的,因此可以覆盖所有方法。这是该语言的一部分。

也没有标记这个的惯例。这是它发生的语言的一部分,如果你要评论,否则当你稍后,偶然或故意这样做时,它会让人感到困惑。

答案 1 :(得分:1)

我不确定Xcode是否这样做,但Jetbrains的AppCode IDE会自动使用边距中的蓝色 覆盖徽章 来覆盖被覆盖的方法,如下所示:

AppCode Override

。 。进一步说明(也显示),我还想创建一些实时模板(也称为Xcode中的代码片段),用#pragma标签注释被覆盖的方法。我发现按此顺序定义标准结构很有帮助:

  • 类方法
  • 初始化&破坏
  • 公共方法/协议方法
  • 重写方法
  • 私人方法

通过使用实时模板/代码片段我可以输入'覆盖[tab]',IDE将为我创建#pragma标记。

。 。也许你甚至可以使用OCLint检查这个结构是否被遵守。

答案 2 :(得分:0)

不,不是真的。

这似乎并不重要,可能是因为动态调度。