面向对象的校长—普通英语
这篇文章讨论了面向对象的原始概念。 在编写代码时,您知道如何将方法声明为私有方法,或者如何从类中进行子类化,而在这里,我尝试用通俗的英语解释这些概念。 这是对每种情况的简单合理解释,以防您想将其解释为六岁的孩子:
遗产:
继承允许我们从类中继承子类。 在面向对象的编程中,类都是层次结构的所有成员,并且只有在继承的帮助下才有可能。 子类从父类继承方法和属性。 这使开发人员可以轻松地重用代码。
抽象:
抽象意味着表示基本功能而不包括实现。 这意味着什么? 抽象是根据事物在继承层次结构中的位置,用更简单的术语(抽象的细节)描述事物的概念或范例。 它有助于表示基本功能,而不必担心实现。 在最抽象的级别上,没有实现细节。 最抽象的概念位于顶部,更具体的思想位于底部。 该图表示抽象概念的一般概念:
接口是一组没有实现的方法。 抽象类包含抽象方法和具体方法,它们必须被继承。
封装形式:
封装用于定义,隐藏和限制访问以外的属性和方法。 它可以防止不必要地访问方法和属性(类是封装数据的容器)。 该访问仅在需要时可用,这由访问修饰符处理:
- 公开:可从任何地方访问
- 受保护的:可在相同的包和子类中访问
- 默认值(无说明符):包内可访问的表格
- 私有:仅可在同一类中访问,子类不可见
Swift中的访问修饰符可以是一个示例。
多态性:
多态性使我们可以定义在父类中已经声明的方法(在子类中)。 通常有两种类型的多态性:
- 编译时多态或重载:
您可以定义多个具有相同名称的方法,唯一的区别是方法签名。 - 运行时多态或覆盖:
您可以使用与父类(或已实现的接口)相同的名称和签名来定义方法。 这使我们能够定义特定于特定子类的方法。