当前位置: 首页 > news >正文

如何理解面向过程和面向对象,举例说明一下?

面向过程和面向对象是两种不同的编程思想,核心区别在于解决问题的视角不同:前者关注 “步骤和过程”,后者关注 “对象和交互”。

  • 面向过程的核心思想是把问题拆解成一系列步骤,通过函数实现每个步骤,然后按顺序调用这些函数,最终完成任务。重点是 “怎么做”。

  • 面向对象的核心思想是把问题拆解成多个 “对象”(每个对象包含自身的数据和操作方法),通过对象之间的交互完成任务。重点是 “谁来做”。

  • 用“番茄炒蛋”来举例:

    • 面向过程的思路,会拆解成具体步骤:

      • 洗番茄、切番茄(函数 1:处理番茄)

      • 打鸡蛋、搅拌(函数 2:处理鸡蛋)

      • 倒油、炒鸡蛋(函数 3:炒鸡蛋)

      • 放番茄、加盐翻炒(函数 4:炒番茄)

      • 混合出锅(函数 5:收尾)

    • 面向对象的思路,会先抽象出 “对象”,再定义对象的行为:

      • 对象 1:番茄

        数据:新鲜度、大小

        方法:被清洗、被切割

      • 对象 2:鸡蛋

        数据:数量、是否打散

        方法:被打碎、被搅拌

      • 对象 3:厨师

        数据:厨艺等级

        方法:炒鸡蛋、炒番茄、混合菜品

http://www.dtcms.com/a/344784.html

相关文章:

  • [docker/大数据]Spark快速入门
  • 【实时Linux实战系列】实时系统中的预测性维护策略
  • 能源行业合同管理难点有哪些?企业该如何应对?
  • FIFO核心原理与机制
  • QGIS 绿色版修正
  • 基于vtkImageViewer2的MPR(二):改进
  • JavaScript 操作 DOM
  • 图论——Floyd算法
  • 四十一、【高级特性篇】API 文档驱动:OpenAPI/Swagger 一键导入测试用例
  • 上市公司能源消耗数据库
  • 【python】os.makedirs和with open
  • 密码管理中硬编码密码
  • (论文速读)并行自回归视觉生成
  • 硬件驱动---linux内核驱动 启动
  • 【LeetCode】21. 合并两个有序链表
  • 开发二手车小程序时,如何确保信息的真实性和可靠性?
  • Prometheus+Grafana监控redis
  • 【连接器专题】连接器接触界面的理解
  • Elasticsearch Rails 集成(elasticsearch-model / ActiveRecord)
  • 高速互联技术——NVLink
  • SpringBoot3集成Oauth2.1——8自定义认证模式(密码模式)
  • 第九届86358贾家庄短片周在山西汾阳贾家庄举办
  • 将博客网站完整迁移至本地虚拟机
  • 爬虫基础学习-授权认证,cookie认证,异常处理
  • 最短路径问题(图论)
  • 中国SM系列密码算法的入门教程
  • 网络实践——Socket编程UDP
  • Seaborn数据可视化实战:Seaborn颜色与样式定制教程
  • elasticsearch的使用
  • odoo-065 两个视图中的action类型的button互相引用,造成死循环