Swift 面试题
目录

Swift 中什么是继承 (Inheritance)?

· 约 2 分钟读完 · 第 87 / 196 章

推荐答案

在 Swift 中,继承(Inheritance)是面向对象编程的一个核心概念,它允许一个类(子类)从另一个类(父类)继承属性和方法。通过继承,子类可以复用父类的代码,并且可以在子类中添加新的功能或重写父类的行为。

本题详细解读

继承的基本概念

  • 父类(Superclass):被继承的类称为父类或基类。父类定义了子类可以继承的属性和方法。
  • 子类(Subclass):继承自父类的类称为子类或派生类。子类可以继承父类的属性和方法,并且可以添加新的属性和方法,或者重写父类的方法。

继承的语法

在 Swift 中,使用 class 关键字定义类,并通过 : 符号指定父类。例如:

在这个例子中,Car 类继承自 Vehicle 类。Car 类继承了 Vehicle 的 speed 属性和 description 方法,并且添加了新的 gear 属性,同时重写了 description 方法。

重写方法

子类可以通过 override 关键字重写父类的方法。重写的方法可以完全替换父类的实现,或者在父类实现的基础上添加新的功能。

防止重写

如果希望某个方法或属性在子类中不能被重写,可以在父类中使用 final 关键字进行标记。例如:

继承的局限性

  • Swift 不支持多继承,即一个类不能同时继承多个父类。
  • 结构体(struct)和枚举(enum)不支持继承。

通过继承,Swift 提供了一种强大的代码复用机制,使得开发者可以构建更加复杂和灵活的类层次结构。