在为 iOS 开发时,如果我们不想对视图控制器类进行子类化,则可以将它们标记为最终



如果我们不想对视图控制器类进行子类化,那么标记视图控制器类是否最终要做一件好事以获得性能优势?

如果你正在编写类或函数,逻辑上不能被覆盖,或者不想被另一个开发人员子类化,最好将 is 标记为 final。

来自苹果文档:

可以通过将方法、属性或下标

标记为 final,来防止重写该方法、属性或下标。为此,请在方法、属性或下标的介绍器关键字(如 final var、final func、final class func 和 final subscript(之前编写 final 修饰符。

任何重写子类中的最终方法、属性或下标的尝试都将报告为编译时错误。添加到扩展中的类的方法、属性或下标也可以在扩展的定义中标记为 final。

通过将 final 修饰符写入 final 修饰

符,可以将整个类标记为 final,方法是在其类定义(final 类(中的 class 关键字之前编写 final。任何对最终类进行子类化的尝试都将报告为编译时错误。

最新更新