面向对象编程

面向对象编程

1. 面向对象编程风格与面向过程编程风格

面向过程编程:

我在学习c++之前,曾学习过C语言,C语言就是一种面向过程的编程语言。
所谓面向过程编程,即采用自顶而下的设计方法。如果我们把实现一个事务需要解决的问题成为MainProblem,在实现过程中,我们需要将MainProblem拆解为多个problem,来逐个解决,这种方法被称作函数分解法
自顶而下的设计的优点是非常直观且条理清晰,但是也有致命缺陷,特别是在软件的开发与维护过程中,当程序的需求发生改变,需要对其中的某个problem进行修改,可能会牵一发而动全身,需要付出很高的维护成本。

面向对象编程:
基本思想:

面向对象程序设计模拟自然界认识和处理事物的方法,将数据和对数据的操作封装为一个相对独立的整体——对象,同类对象可抽象出共性来构成
在面向对象编程中,构成模块的基本单元是而不是面向过程编程中的过程

基本概念:

对象的集合体,是具有相同属性行为的一组对象的集合,它为属于该的所有对象提供了统一的抽象描述,其内部包括属性行为两个主要部分。一个类中的数据通常只能通过本类的方法进行处理,这些方法称为该类与外部的接口,对象之间通过消息进行通信。
消息 对象之间相互作用所传递的信息称为消息。

主要特性:

封装性:封装是面向对象编程最基本的特性,就是把数据(属性)与函数(操作)合成一个整体,这是用类与对象实现的。
继承性:继承是根据一个类型定义另一个类型的能力。它是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,从而在已有的基础上产生新的
多态性:多态表示在不同时刻有不同的形态;即同一个消息被不同对象接收时,产生不同结果,即实现同一接口不同方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值