首页 > 其他分享 >面向过程与面向对象你弄清楚了吗?

面向过程与面向对象你弄清楚了吗?

时间:2024-03-15 20:32:42浏览次数:28  
标签:弄清楚 对象 步骤 复用 面向对象 面向 过程

图片

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

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

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

  • 其实就是两句话,面向过程就是自顶向下的编程,面向对象就是高度事物抽象化

2.面向对象的特点

  • 对象:现实中任何事务都可以称之为对象,有自己的独特的特点,属性是用来描述具体某个对象的特征。例如小明身高180,体重70千克,身高和体征就是属性。面向对象的思想就是把一切事务都看成对象,而对象一般都是由属性和方法组成

  • 属性属于对象静态的一面,用来形容对象的一些特性。方法属于对象动态的一面,例如,小明会跑,会说话。跑,说话这些行为就是对象的方法

  • 类:具有同样属性的对象称为类。例如,“人”就是一类,其中的人名比如小明,小红等都是对象。类相当于一个模板,他定义了它所包含的全体对象的公共特征和功能,对象是类的实例化

  • 面向对象有三大特征:封装性、继承性和多态性

3.面向过程优缺点

  • 优点是性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源。而Linux\Unix等一般采用面向过程开发,性能时最重要的因素

  • 缺点是没有面向对象易维护,易复用,易扩展。可维护性差,不易修改

4.面向对象优缺点

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

  • 缺点是性能比面向过程低

5.总结

  • 面向过程和面向对象是两种不同的编程思想。面向过程关注解决问题步骤,而面向对象关注问题中的事物。面向对象具有封装性、继承性和多态性,易维护、易复用和易扩展,但性能较低。相比之下,面向过程性能较高,但没有面向对象易维护、易复用和易扩展,可维护性差,不易修改。

标签:弄清楚,对象,步骤,复用,面向对象,面向,过程
From: https://blog.csdn.net/luorongxi123/article/details/136744555

相关文章

  • 1分钟带你学会Python面向对象基础语法
    1.类和对象python中的面向对象主要学习类和对象类:是多个具有特殊功能的个体的集合,例如:人类/猫类/犬类对象:在一个类中,一个具有特殊功能的个体,能够帮忙解决某件特定的事情,也被称为实例两者之间的关系:类是用于描述某一类对象的共同特征,而对象是类的具体的存在在程序中......
  • 米尔瑞米派(Remi Pi)更新面向工业产品的软件系统
    米尔电子发布的瑞萨第一款MPU生态板卡——瑞米派(RemiPi)自上市当天200套售罄,获得不少新老用户的青睐。为感谢大家的支持,米尔加推300套瑞米派活动,以补贴价198元回馈大家,抢完即止!不仅如此,此次瑞米派发布myir-image-core系统,相比上次发布适用于HMI场景的全面型myir-image-full系统,my......
  • EI期刊复现:面向配电网韧性提升的移动储能预布局与动态调度策略程序代码!
    适用平台:Matlab+Yalmip+Cplex/Gurobi/Mosek程序提出一种多源协同的两阶段配电网韧性提升策略。在灾前考虑光伏出力不确定性与网络重构,以移动储能配置成本与负荷削减风险成本最小为目标对储能的配置数量与位置进行预布局;在灾后通过多源协同运行与移动储能的动态调度最小化负荷......
  • Java面向对象的一些学习笔记
    1.Private关键字:(1)private关键字是一个权限修饰符(2)可以修饰成员变量和成员方法(3)被private修饰的成员只能在本类中才能访问(4)针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作(5)提供"setXxx(参数)"方法,用于给成员变量赋值,方法用public修饰(6)提供"getXxx(参数)......
  • 6. 面向对象(重点)
    1面向对象1.1了解对象学习面向对象编程都先我们需要先思考三个问题:1.1.1面向对象的好处?Java作者詹姆斯.高斯林说过**万物皆对象**汽车的数据可以找汽车对象处理手机数据可以找手机对象处理学生的数据可以找学生对象处理使用面向对象编程符合人类思维习惯,就好比谁......
  • Go语言中的面向对象编程(OOP)
    在Go语言中,虽然没有像面向对象语言那样的类,但通过结构体类型和方法,仍然支持部分面向对象编程(OOP)的概念。封装(Encapsulation)封装是一种将一个对象的实现细节隐藏起来,使其对其他对象不可见的做法,这样可以实现解耦。例如,考虑以下结构体:typeStudentstruct{namestring......
  • 面向对象设计的六大原则(SOLID原则)-——里氏替换原则
    里氏替换原则(LiskovSubstitutionPrinciple,LSP)是面向对象设计的基本原则之一,由BarbaraLiskov提出。它表明,如果程序中的对象使用的是基类型的话,那么无论它实际上使用的是哪一个子类的对象,程序的行为都不会发生改变。简单来说,子类型必须能够替换它们的基类型,而且替换后程序的行......
  • JAVA学习日记五(面向对象-高级)
    1.关键字:static如果想让一个成员变量被类的所有实例所共享,就用static修饰即可,称为类变量(或类属性)!使用范围:在Java类中,可用static修饰属性、方法、代码块、内部类被修饰后的成员具备以下特点:随着类的加载而加载优先于对象存在修饰的成员,被所有对象所共享访问权限......
  • JAVA学习日记四(面向对象-基础)
    1.面向对象概述面向对象可以帮助我们从宏观上把握、从整体上分析整个系统。我们千万不要把面向过程和面向对象对立起来。他们是相辅相成的。面向对象离不开面向过程!2.Java的基本元素:类和对象类:具有相同特征的事物的抽象描述,是抽象的、概念上的定义。对象:实际存在的该类事......
  • 论面向对象的建模及应用
        本文旨在探讨面向对象的建模在软件系统开发中的应用。首先,概述了作者参与的一个实际的软件系统开发项目,并详细描述了在该项目中担任的主要工作。接着,深入阐述了用例模型和分析模型的概念、作用以及在实际项目中的具体应用。最后,分析了在使用这两种模型过程中遇到的......