什么是面向对象编程和面向过程编程
一、先来两小段通俗解释
1.面向过程(Procedure Oriented 简称PO :如C语言):(流程图)
从名字可以看出它是注重过程的。当解决一个问题的时候,面向过程会把事情拆分成: 一个个函数和数据(用于方法的参数) 。然后按照一定的顺序,执行完这些方法(每个方法看作一个过程),等方法执行完了,事情就搞定了。
2.面向对象(Object Oriented简称OO :如C++,JAVA等语言):(活动图)
看名字它是注重对象的。当解决一个问题的时候,面向对象会把事物抽象成对象的概念,就是说这个问题里面有哪些对象,然后给对象赋一些属性和方法,然后让每个对象去执行自己的方法,问题得到解决。
二、用例子说明两者的区别
例子一:
问题: 洗衣机里面放有脏衣服,怎么洗干净?
(1)面向过程的解决方法:
1、执行加洗衣粉方法;
2、执行加水方法;
3、执行洗衣服方法;
4、执行清洗方法;
5、 执行烘干方法;
以上就是将解决这个问题的过程拆成一个个方法(是没有对象去调用的),通过一个个方法的执行来解决问题。
(2)面向对象的解决方法:
1、我先弄出两个对象:“洗衣机”对象和“人”对象
2、针对对象“洗衣机”加入一些属性和方法:“洗衣服方法”“清洗方法”、“烘干方法”
3、针对对象“人”加入属性和方法:“加洗衣粉方法”、“加水方法”
4、然后执行
人.加洗衣粉
人.加水
洗衣机.洗衣服
洗衣机.清洗
洗衣机.烘干
解决同一个问题 ,面向对象编程就是先抽象出对象,然后用对象执行方法的方式解决问题。面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
什么是面向对象编程和面向过程编程相关推荐
- 函数式编程、面向对象编程、面向过程编程
函数式编程: 它属于"结构化编程"的一种,主要思想是把运算过程尽量写成一系列嵌套的函数调用.举例来说,现在有这样一个数学表达式. 1. 代码简洁,开发快速 函数式编程大量使用函数, ...
- 面向对象编程,面向切面编程,面向过程编程
面向过程编程 面向过程编程(POP): 面向过程编程是以过程为中心的编程思想,从而分析解决问题所需要的步骤,然后编写函数来实现这些步骤,再依次调用这些函数. 比如把大象放进冰箱的步骤:打开 ...
- 面向对象编程与面向过程编程
文章目录 一.什么是面向对象编程? 二.面向对象的特点是什么? 1.在上面的例子中,面向对象的特性是怎么表现出来的呢? 2.什么时候适合使用面向对象 三.Js 中的面向对象 1.对象包含什么 2.一些 ...
- 浅谈面向对象编程与面向过程编程
面向对象编程 面向对象编程是一种更加复合人们思维方式的编程思想.在现实生活中存在许多不同种类的事物,但是这些事物之间存在着某种联系,我们在使用程序模拟实现这些事物时,就可以通过对象的形式对其进行描述. ...
- 面向对象与面向过程编程
从语言角度来讲: C是面向过程编程: C++一半是面向过程编程,一半是面向对象编程: Java是面向对象编程. 一.什么是面向对象编程与面向过程编程? 面向过程(Procedure Oriented ...
- 面向对象,面向过程编程
很多时候,我们都是用面向对象语言进行面向过程编码. 1. 滥用 getter.setter 方法. 滥用getter,setter方法很容易造成违反封装特性.数据没有访问权限控制,任何代码都可 ...
- (转)函数作用域,匿名函数,函数式编程,面向过程,面向对象
函数作用域 ? 1 2 3 4 5 6 7 8 9 10 def first(): name = 'Wangben' def second(): name = 'Men ...
- 面向对象和面向过程~~编程思想
对于编程思想来说,大意上可分为俩种,一种为面向对象,一种为面向过程. 面向过程,只追求运算逻辑.耦合度高(耦合度是指事物关联程度的紧密度).扩展力差 而面向对象是追求的是模块之间的互相协作,耦合度低, ...
- 为什么有人说面向对象编程就是面向接口编程?
"面向对象编程就是面向接口编程" 这句话相信, 很多人都在网上见过, 装b利器. 我一开始也是这么想的, 那些装b者丢下这一句, 就没下文了. 首先, 我认为这句话是1个假命题. ...
最新文章
- 转乱码UTF8和UTF-8网页编码
- STL中istream_iterator和ostream_iterator的基本用法
- R语言数据包自带数据集之mtcars数据集字段解释、数据导入实战
- IC基础知识(2)模拟和数字电子学导论
- next_permutation(,)用法
- mysql 更新多条id键值相同记录中的最新(最后一条)记录
- for循环里的if语句中break_Go语言极简教程 - 第五篇 控制语句
- 内存映射文件——Windows核心编程学习手札之十七
- 怎样在python代码中输入π_鼠标自动点击、键盘自动输入?几行Python代码搞定
- python循环语句for求和_for循环简介
- OTC场外交易平台源码/虚拟场外交易源码
- 三亚旅游攻略-自由人实用指南
- python局域网监控系统_python 实现局域网监控
- oracle dbms_lob trim,DBMS_LOB包基础应用
- 计算机实训四 表格制作素材,计算机平面设计实训(第3版 赵荣胡昌杰)课件 素材平面图像设计实训04.ppt...
- 印度黑客号称世界第一,结果第二天被中国黑客干掉了
- Android app跳转QQ加人聊天或者加群
- 雅俗共享的微信小程序《老子探秘》,大家评价一下好坏
- 矩阵树定理--luoguP4208 [JSOI2008]最小生成树计数
- 文本分词并统计出现次数最高的几个词Python
热门文章
- 极度未知HyperX夺宝日—HyperX Cloud Alpha S加强版游戏耳机来了
- python setup.py egg_info did not run successfully. Preparing metadata (pyproject.toml) did not run
- lyaui清除图片文件上传成功后清除文件队列,防止重复提交
- android 快速亮暗屏_Android设备闪屏怎么办?手机屏幕一会亮一会暗怎么办
- 单例模式的使用和应用场景
- 靶向 STING 蛋白的共价抑制剂
- Redis 中 bitmap 的原理和使用
- MobaXterm:“十项全能”的远程终端登录软件
- 财神:很多人混不好 其实是自己活该
- 来来来,干了这碗毒鸡汤……