面向过程与面向对象的区别

面向过程与面向对象的区别

1、面向过程(POP)

  • 概念:

pop(Process-oriented programming)的缩写,“面向过程”是一种是事件为中心的编程思想。

面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

面向过程:主要关注点:实现的具体过程,因果关系。

  • 特性:

模块化,流程化

  • 优点:

性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源。对于业务逻辑比较简单的程序,可以达到快速开发,前期投入成本较低。

  • 缺点:

采用面向过程的方式开发很难解决非常复杂的业务逻辑,另外面向过程的方式导致软件元素之间的“耦合度”非常高,只要其中一环出现问题,整个系统受到影响,导致最终的软件“扩展力”差,另外,由于没有独立体的概念,所以无法达到组件复用。

在这里插入图片描述

2、面向对象(OOP)

  • 概念:

oop(Object Oriented Programming)的缩写面向对象:用线性的思维。与面向过程相辅相成。

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

面向对象:主要关注点是:主要关注对象(独立体)能完成哪些功能。

  • 特性:

封装,继承,多态

  • 优点:

耦合度低,扩展力强,更容易解决现实世界当中更复杂的业务逻辑。

易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护。

  • 缺点:

性能比面向过程低

在这里插入图片描述

3、主要语言分类:

面向过程的语言: C语言

面向对象的语言:C++, C#,Java,delphi

4、面向对象的理解:

面向对象的生命周期:

面向对象的方式开发一个软件,生命周期可分为三个阶段:

面向对象的分析:OOA

面向对象的设计:OOD

面向对象的编程:OOP

什么是类:

  • 类的定义

类是现实世界当中是不存在的,是一个模版,是一个概念,是抽象出来的结果。

类代表了一类事物,具有同种属性的对象称为类,是个抽象的概念,

一个类主要描述的是:状态和动作。

  • 语法结构:

    [修饰符列表] class 类名{

    ​ 属性:

    ​ 方法:

什么是对象:

对象是实际存在的个体,是现实世界当中实际存在的任何事务,有自己独特的特性。

属性:

用来描述具体某个对象的特征。描述的是对象的状态信息,通常以变量的形式进行定义。

在类体中,方法体之外定义的变量称为“成员变量”

创建对象后才能访问的变量称为实例变量

对象又称为实例,实例变量又称为对象变量

方法:

描述的是对象的动作信息,为定义在类中的具特定功能的一段独立的小程序,方法也称为函数

方法运行后的返回结果的数据类型,

方法的特点:

​ 定义方法可以将功能代码进行封装。

​ 便于该功能进行复用。 方法只有被调用才会被执行。

​ 方法的出现提高代码的复用性。

  • 类与对象的关系

类–(实例化)–>对象

对象–(抽象)–>类

在这里插入图片描述

变量的生命周期

成员变量局部变量静态变量
定义位置在类中,方法外方法中,或者方法的形参在类中,方法外
初始化值有默认初始化值无,先定义,赋值后才能使用有默认初始化值
调用方式对象调用对象调用,类名调用
存储位置堆中栈中方法区
生命周期与对象共存亡与方法共存亡与类共存亡
别名实例变量类变量
  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值