什么是OOP(面向对象编程)

OOP(面向对象编程)指的是在面向对象编程(Object-Oriented Programming)中应该遵循的设计原则,包括了基本概念(EIPA)以及更多的设计原则(如SOLID原则)。主要的OOP原则包括:

基本概念

  1. 封装 (Encapsulation)

    • 将数据和操作数据的方法捆绑在一起
    • 隐藏对象的内部状态,只通过公共接口访问
    • 例如:将类的成员变量设为私有,只通过公共方法访问
  2. 继承 (Inheritance)

    • 允许一个类(子类)基于另一个类(父类)构建
    • 子类自动获得父类的特性,并可以添加自己特有的功能
    • 促进代码重用和层次结构
  3. 多态 (Polymorphism)

    • 允许不同类的对象对相同消息做出不同响应
    • 包括:
      • 运行时多态(通过方法重写)
      • 编译时多态(通过方法重载)
    • 增强了代码的灵活性和可扩展性
  4. 抽象 (Abstraction)

    • 关注对象的关键特性而非细节
    • 通过抽象类和接口实现
    • 定义了对象的行为契约而不关心实现细节

SOLID原则(高级OOP原则)

  1. 单一职责原则 (Single Responsibility Principle)

    • 一个类应该只有一个改变的理由(即一个职责)
    • 提高内聚性,降低耦合度
  2. 开放封闭原则 (Open/Closed Principle)

    • 软件实体应该对扩展开放,对修改关闭
    • 通过抽象和多态实现功能扩展而不修改现有代码
  3. 里氏替换原则 (Liskov Substitution Principle)

    • 子类对象应该能够替换父类对象使用,而不改变程序正确性
    • 确保继承关系合理
  4. 接口隔离原则 (Interface Segregation Principle)

    • 客户端不应该依赖它不使用的接口
    • 推荐使用多个专用接口而非一个总接口
  5. 依赖倒置原则 (Dependency Inversion Principle)

    • 高层模块不应依赖低层模块,两者都应依赖于抽象
    • 抽象不应依赖细节,细节应依赖抽象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值