一、先来两小段通俗解释

1.面向过程(Procedure Oriented 简称PO :如C语言):(流程图)

从名字可以看出它是注重过程的。当解决一个问题的时候,面向过程会把事情拆分成: 一个个函数和数据(用于方法的参数) 。然后按照一定的顺序,执行完这些方法(每个方法看作一个过程),等方法执行完了,事情就搞定了。

2.面向对象(Object Oriented简称OO :如C++,JAVA等语言):(活动图)

看名字它是注重对象的。当解决一个问题的时候,面向对象会把事物抽象成对象的概念,就是说这个问题里面有哪些对象,然后给对象赋一些属性和方法,然后让每个对象去执行自己的方法,问题得到解决。

二、用例子说明两者的区别

例子一:

问题: 洗衣机里面放有脏衣服,怎么洗干净?

(1)面向过程的解决方法:

1、执行加洗衣粉方法;

2、执行加水方法;

3、执行洗衣服方法;

4、执行清洗方法;

5、 执行烘干方法;

以上就是将解决这个问题的过程拆成一个个方法(是没有对象去调用的),通过一个个方法的执行来解决问题。

(2)面向对象的解决方法:

1、我先弄出两个对象:“洗衣机”对象和“人”对象

2、针对对象“洗衣机”加入一些属性和方法:“洗衣服方法”“清洗方法”、“烘干方法”

3、针对对象“人”加入属性和方法:“加洗衣粉方法”、“加水方法”

4、然后执行

人.加洗衣粉

人.加水

洗衣机.洗衣服

洗衣机.清洗

洗衣机.烘干

解决同一个问题 ,面向对象编程就是先抽象出对象,然后用对象执行方法的方式解决问题。面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。

什么是面向对象编程和面向过程编程相关推荐

  1. 函数式编程、面向对象编程、面向过程编程

    函数式编程: 它属于"结构化编程"的一种,主要思想是把运算过程尽量写成一系列嵌套的函数调用.举例来说,现在有这样一个数学表达式. 1. 代码简洁,开发快速 函数式编程大量使用函数, ...

  2. 面向对象编程,面向切面编程,面向过程编程

    面向过程编程 面向过程编程(POP): 面向过程编程是以过程为中心的编程思想,从而分析解决问题所需要的步骤,然后编写函数来实现这些步骤,再依次调用这些函数.       比如把大象放进冰箱的步骤:打开 ...

  3. 面向对象编程与面向过程编程

    文章目录 一.什么是面向对象编程? 二.面向对象的特点是什么? 1.在上面的例子中,面向对象的特性是怎么表现出来的呢? 2.什么时候适合使用面向对象 三.Js 中的面向对象 1.对象包含什么 2.一些 ...

  4. 浅谈面向对象编程与面向过程编程

    面向对象编程 面向对象编程是一种更加复合人们思维方式的编程思想.在现实生活中存在许多不同种类的事物,但是这些事物之间存在着某种联系,我们在使用程序模拟实现这些事物时,就可以通过对象的形式对其进行描述. ...

  5. 面向对象与面向过程编程

    从语言角度来讲: C是面向过程编程: C++一半是面向过程编程,一半是面向对象编程: Java是面向对象编程. 一.什么是面向对象编程与面向过程编程? 面向过程(Procedure Oriented ...

  6. 面向对象,面向过程编程

    很多时候,我们都是用面向对象语言进行面向过程编码.     1. 滥用 getter.setter 方法. 滥用getter,setter方法很容易造成违反封装特性.数据没有访问权限控制,任何代码都可 ...

  7. (转)函数作用域,匿名函数,函数式编程,面向过程,面向对象

    函数作用域 ? 1 2 3 4 5 6 7 8 9 10 def first():     name = 'Wangben'     def second():         name = 'Men ...

  8. 面向对象和面向过程~~编程思想

    对于编程思想来说,大意上可分为俩种,一种为面向对象,一种为面向过程. 面向过程,只追求运算逻辑.耦合度高(耦合度是指事物关联程度的紧密度).扩展力差 而面向对象是追求的是模块之间的互相协作,耦合度低, ...

  9. 为什么有人说面向对象编程就是面向接口编程?

    "面向对象编程就是面向接口编程" 这句话相信, 很多人都在网上见过, 装b利器. 我一开始也是这么想的, 那些装b者丢下这一句, 就没下文了. 首先, 我认为这句话是1个假命题. ...

最新文章

  1. 转乱码UTF8和UTF-8网页编码
  2. STL中istream_iterator和ostream_iterator的基本用法
  3. R语言数据包自带数据集之mtcars数据集字段解释、数据导入实战
  4. IC基础知识(2)模拟和数字电子学导论
  5. next_permutation(,)用法
  6. mysql 更新多条id键值相同记录中的最新(最后一条)记录
  7. for循环里的if语句中break_Go语言极简教程 - 第五篇 控制语句
  8. 内存映射文件——Windows核心编程学习手札之十七
  9. 怎样在python代码中输入π_鼠标自动点击、键盘自动输入?几行Python代码搞定
  10. python循环语句for求和_for循环简介
  11. OTC场外交易平台源码/虚拟场外交易源码
  12. 三亚旅游攻略-自由人实用指南
  13. python局域网监控系统_python 实现局域网监控
  14. oracle dbms_lob trim,DBMS_LOB包基础应用
  15. 计算机实训四 表格制作素材,计算机平面设计实训(第3版 赵荣胡昌杰)课件 素材平面图像设计实训04.ppt...
  16. 印度黑客号称世界第一,结果第二天被中国黑客干掉了
  17. Android app跳转QQ加人聊天或者加群
  18. 雅俗共享的微信小程序《老子探秘》,大家评价一下好坏
  19. 矩阵树定理--luoguP4208 [JSOI2008]最小生成树计数
  20. 文本分词并统计出现次数最高的几个词Python

热门文章

  1. 极度未知HyperX夺宝日—HyperX Cloud Alpha S加强版游戏耳机来了
  2. python setup.py egg_info did not run successfully. Preparing metadata (pyproject.toml) did not run
  3. lyaui清除图片文件上传成功后清除文件队列,防止重复提交
  4. android 快速亮暗屏_Android设备闪屏怎么办?手机屏幕一会亮一会暗怎么办
  5. 单例模式的使用和应用场景
  6. 靶向 STING 蛋白的共价抑制剂
  7. Redis 中 bitmap 的原理和使用
  8. MobaXterm:“十项全能”的远程终端登录软件
  9. 财神:很多人混不好 其实是自己活该
  10. 来来来,干了这碗毒鸡汤……