面向对象
Posted my12
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象相关的知识,希望对你有一定的参考价值。
面向对象
定义
面向对象,即Object Oriented,是一种新兴的程序设计方法。面向对象把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数
三大基本特征:封装、继承、多态
- 封装:封装也称为信息隐藏,是指将客观事物抽象成类,每个类对于自身的数据和方法提供保护。类可以将自己的数据和方法让信任的类或者对象操作,对不可信的进行信息隐藏
- 继承:继承是指子类自动共享父类数据和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容
- 多态:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式(发送消息就是函数调用)
五大基本原则
- 单一职责原则 (Single Responsibility Principle)
核心思想:一个类的功能要单一,不能包罗万象
- 里氏替换原则 (Liskov Substitution Principle)
核心思想:超类存在的地方,子类是可以替换的
- 开放封闭原则(Open-Close Principle)
核心思想:面向扩展开放,面向更改关闭
- 依赖倒置原则(The Dependency Inversion Principle )
核心思想:实现依赖于抽象,不依赖具体实现
- 接口隔离原则(the Interface Segregation Principle )
核心思想:使用多个小的接口,而不要使用一个大的接口
优点
- 易维护,低耦合的特点使得程序的维护成本较低
- 易扩展,代码复用率高
- 结构清晰,模块化和结构化,更加符合人类的思维方式
缺点
- 开销大
- 性能低,因为面向对象在类调用时需要实例化,开销较大
面向过程
定义
面向过程(Procedure Oriented)是一种以过程为中心的编程思想,即自顶向下、逐步细化
优点
性能较高
缺点
没有面向对象易维护、易复用、易扩展
以上是关于面向对象的主要内容,如果未能解决你的问题,请参考以下文章