怎么理解面向对象和面向过程到底的本质区别? .

简介: 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

       面向过程的思维方式是分析综合。面向对象的思维方式是构造。

就是对C语言过程式解决问题时。一般是将现有的数据结构先定义出来。然后想办法构造出算法了。


     而用C++这样的面向对象求解时,先是将对象抽出来。构造成一个仿真的环境,然后在这个环境里,把与最终要解决的问题间建立一个方法。

     所以面向过程的程序设计有挑战性,技巧性强。


      而面向对象主要在于对象抽象有技术性,抽象完了后,任何人都可以做后面的工作了。

     面向对象和面向过程的主要区别就是数据是单独存储还是与操作存储在一起。对面向过程而言,数据是独立的。而在面向对象中,对象本身就提供了存储数据的空间(类的数据成员),这样就是函数的参数传递简单多了,而且提供了数据封装后,数据的访问也变可靠了。


     面向过程就是将编程当成是做一件事,要按步骤完成,每一步就是一个过程。比如作菜,先放油,接着是放菜进去炒,然后放水,最后菜就做好了。

这里面放油,炒,放水就是三个步骤。


      面向对象就是将编程当成是一个事物,对外界来说,事物是直接使用的,不用去管他内部的情况。而编程就是设置事物能够做什么事。其实有点像是将面向过程给放到事物内部了。仍然举作菜为例,其实面向过程就好像你是个厨师,要自己炒菜,所以要讲究步骤,而面向对象就好像你是个食客,你只要通知厨师作菜,即发一个消息就可以了,至于厨师怎样作菜,是不用知道的。

相关文章
|
缓存 Java
梳理10道经典面向对象的面试题
梳理10道经典面向对象的面试题
1244 0
|
SQL Oracle 关系型数据库
Oracle 锁表查询及解锁kill进程
1. 查看被锁定的表 SELECT OBJECT_NAME, MACHINE, S.SID, S.
3776 0
|
存储 数据采集 算法
构建AI数据管道:从数据到洞察的高效之旅最佳实践
本文探讨了大模型从数据处理、模型训练到推理的全流程解决方案,特别强调数据、算法和算力三大要素。在数据处理方面,介绍了多模态数据的高效清洗与存储优化;模型训练中,重点解决了大规模数据集和CheckPoint的高效管理;推理部分则通过P2P分布式加载等技术提升效率。案例展示了如何在云平台上实现高性能、低成本的数据处理与模型训练,确保业务场景下的最优表现。
|
PHP
用php随机生成福彩双色球号码的2种方法
不瞒您说,俺也是个双色球爱好者,经常买,但迟迟没有中过一等奖,哈哈。这里为大家介绍用php随机生成福彩双色球号码的二种方法,供朋友们学习参考。新的一年,祝大家中大奖,发大财。 方法一 复制代码代码如下: 方法二 复制代码代码如下:   前一种方法相对麻烦些,有需要的朋友,不妨参考下第二种方法。
4377 0
|
XML 数据安全/隐私保护 数据格式
微信xml卡片消息生成器,微信xml卡片生成啊制作工具,卡片消息一键发送【python】
这个实现包含三个主要模块:核心生成器类、预定义模板类和主程序入口。核心类负责获取微信
|
编译器 开发工具 C语言
FFmpeg开发笔记(一):ffmpeg介绍、windows开发环境搭建(mingw和msvc,无需源码编译)
FFmpeg开发笔记(一):ffmpeg介绍、windows开发环境搭建(mingw和msvc,无需源码编译)
FFmpeg开发笔记(一):ffmpeg介绍、windows开发环境搭建(mingw和msvc,无需源码编译)
|
SQL 消息中间件 关系型数据库
Flink SQL 问题之提交执行报错如何解决
Flink SQL报错通常指在使用Apache Flink的SQL接口执行数据处理任务时遇到的问题;本合集将收集常见的Flink SQL报错情况及其解决方法,帮助用户迅速恢复数据处理流程。
1088 2
反演定理的介绍
反演定理(Inverse Theorem)是数学中的一个重要定理,它在代数、几何和概率论等领域都有广泛的应用。反演定理是一种通过将一个问题转化为其逆问题来解决问题的方法。本文将介绍反演定理的基本概念、证明方法和应用场景。 一、反演定理的基本概念 反演定理是一种将一个问题转化为其逆问题来解决问题的方法。它基于一个重要的观察:某些数学问题的解与其逆问题的解之间存在一种对应关系。具体来说,如果一个问题的解可以唯一地确定其逆问题的解,那么我们就可以通过解决逆问题来解决原问题。 反演定理的基本形式如下: 如果一个问题的解与其逆问题的解之间存在一种一对一的对应关系,那么我们可以通过解决逆问题来解决原问
1688 0
|
负载均衡 关系型数据库 MySQL
使用 LVS+Keepalived 实现 MySQL 双主复制负载均衡高可用
使用 LVS+Keepalived 实现 MySQL 双主复制负载均衡高可用
1497 0
使用 LVS+Keepalived 实现 MySQL 双主复制负载均衡高可用
|
安全 Java Spring
【Java用法】Java 过滤html标签获取纯文本信息
【Java用法】Java 过滤html标签获取纯文本信息
713 0