【设计模式】封装、继承、抽象、多态

封装 Encapsulation

封装,即信息隐藏/数据访问保护。在面向对象中,类通过暴露有限的访问接口,让外部仅能通过有限的访问接口来访问内部的数据。
封装的实现往往需要编程语言提供一定的语法机制支持,即访问权限控制机制。
类通过提供有限的方法,可以提高类的易用性、安全性,降低了调用者对类的了解程度。

抽象Abstraction

接口类指的是编程语言提供的接口语法。
抽象并不需要编程语言提供特殊的语法机制就能实现,只需要提供函数这一基本特性就能实现,本质上就是包裹具体的实现逻辑,让调用者在使用的时候不需要了解内部的逻辑,通过对函数的命名、注释或文档的阅读即可了解功能,然后实现它。
抽象是降低问题复杂性的重要手段。

继承 Inheritance

继承是用来表达类之间的is-a的关系,比如说 dog is a animal,animal类具有dog子类。
继承的最大好处就是代码的复用。

多态 Polymorphism

多态需要编程语言提供特殊的语法机制实现:

  • 支持父类对象可以引用子类对象。
  • 支持继承。
  • 支持子类可以重写父类的方法。

鸭子类型duck-typing也可以用于实现多态。
多态的用处就是提高代码的可扩展性。

相关推荐

  1. 设计模式封装继承抽象

    2024-06-10 18:02:01       16 阅读
  2. 类与对象、抽象封装继承以及举例

    2024-06-10 18:02:01       13 阅读
  3. C++入门篇----封装继承

    2024-06-10 18:02:01       38 阅读
  4. python 面向对象(封装继承)

    2024-06-10 18:02:01       16 阅读
  5. python 的继承封装

    2024-06-10 18:02:01       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-10 18:02:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-10 18:02:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-10 18:02:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-10 18:02:01       20 阅读

热门阅读

  1. arcgis开发记录

    2024-06-10 18:02:01       15 阅读
  2. Web前端Hack:深入探索、挑战与防范

    2024-06-10 18:02:01       13 阅读
  3. 12-Ribbon-负载均衡原理

    2024-06-10 18:02:01       12 阅读
  4. PyQt5 实现的批量改文件名的工具

    2024-06-10 18:02:01       12 阅读
  5. Spring Boot与RabbitMQ的整合

    2024-06-10 18:02:01       11 阅读
  6. 模板字符串

    2024-06-10 18:02:01       14 阅读
  7. 软件测试--第五章-单元测试与集成测试。

    2024-06-10 18:02:01       13 阅读
  8. aes-cbc一例

    2024-06-10 18:02:01       11 阅读
  9. 关于在 Ubuntu 下安装配置和调优 FTP 服务器

    2024-06-10 18:02:01       12 阅读
  10. 中介子方程十

    2024-06-10 18:02:01       9 阅读
  11. Mac环境如何使用Flutter Version Manager (fvm)

    2024-06-10 18:02:01       10 阅读