--------android培训、java培训、期待与您交流! ----------

这两天工作之余,一直在学习毕老师的java基础视频,昨天看到毕老师介绍面向对象的那一节,对毕老师举的例子印象很深。面向对象到底是什么呢?他与传统的设计有什么不同呢?这是维基百科里给出我们答案:

面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传统的程序设计主张将程序看作一系列函数的集合,或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。

毕老师给我们将解时,直接引用的“把大象放进冰箱有几步”我们第一时间想到的都是三步:第一步把冰箱门打开,第二步把大象放进去,第三步把冰箱门关上。其实这个思想就是典型的面向过程的思想。很显然,把大象放进冰箱,我们想的是大象该如何放进去,先怎么做,再怎么做。对于整个事件,我们都在考虑他的每一步,侧重的是事件的过程。

那么怎么样才是面向对象呢?面向对象,首先我们要找到一个对象,这个例子里对象就是冰箱!我们把开门,放大象,关门这一系列动作都交给冰箱完成。我们要做的是什么呢?我们只要找到冰箱,对冰箱说:“去,把大象装进来”。而至于怎么开门,怎么装,这些都不需要我们考虑。这就是我们面对冰箱这个对象完成这个大象放进冰箱的任务。

可能大家觉得这个例子还是不够直白,冰箱怎么就知道怎么装呢?好吧,那我们换一种说法来解释。我就拿我们日常生活中最平凡不过的事情来举例吧。吃饭!这个大家不陌生吧,看到吃饭不少吃货都觉得隐隐有点饿了吧→_→ 。好吧,就说吃饭吧。完成吃饭这个事,不同的人有不同的完成方式,文艺青年首先想:嗯,吃什么呢,吃红烧鱼吧,再来在网上搜一下怎么洗鱼,准备什么佐料,放多少盐,什么时候加佐料,多大火候,什么时候起锅。。。唉,吃个鱼真是辛苦,不过通过完成这一系列的步骤,我们还是达到了吃鱼的目的。

同样是吃鱼,土豪们还有另外一种办法,走进餐馆,喊一声:“来盘红烧鱼”。五分钟后,一盘红烧鱼就端到面前可以开吃了。同样是吃饭,不同的人效率不同。

文艺青年是按照做鱼的步骤,一步步来完成,最后实现了吃红烧鱼的目的。这个方式就可以说是一种面向过程的方式,我们一步步完成做鱼的过程,最后吃到了鱼。

而土豪则是直接喊一句吃鱼,然后厨师就给他端一盘鱼上来,至于鱼是怎么做的,他不用知道。这个就是典型的面向对象的思想,我们面向吃鱼这个对象,把怎么做鱼的这些步骤打包起来,交给厨师。当我们想吃鱼时,只需要调用厨师,来帮我们完成做鱼这件事即可,不必再一步一步的处理做鱼的过程。

所以说面向对象这种思想能使复杂的问题简单化,让我们从执行者变成指挥者,从而大大提高了我们处理事情的效率。

这就是我对面向对象的理解,如有不对,欢迎大家指正!最后引用毕老师那禅道:“万物皆对象”。

   

比老师

黑马程序员-----浅谈面向对象的含义相关推荐

  1. 黑马程序员 浅谈封装的具体实现的几种例子

    可能很多人学了面向对象概念后,对封装只是一个模糊的理解,大概知道是怎么回事,但又说不出用的地方,本人小小的总结了一下: 1.属性封装了字段 例子: class Program     {       ...

  2. 黑马程序员-Java基础:面向对象(上)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.面向对象概述 当需求单一,或者简单时,我们一步一步去操作没问题,并且效率也挺高.可随着需求的 ...

  3. 初级菜鸟程序员浅谈开源和共享精神

    大家对开源这个东西肯定也是耳熟能详了,github上面有一大堆开源项目,供大家学习参与. 我个人感觉,开源其实就是一种企业或个人的自由选择.我个人是很respect替开源项目贡献代码的人,唉. 有时间 ...

  4. 老派程序员浅谈Python的异常处理

    @本文来源于公众号:csdn2299,喜欢可以关注公众号 程序员学府 文章目录 一.与python异常相关的关键字 二.python中的异常类型 三.基本方式: 三.手动使用raise引发异常 Pyt ...

  5. 黑马程序员——java基础--面向对象(篇一)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 第一章 1.面向对象     2.成员变量      3.匿名对象     4.封装       ...

  6. 黑马程序员_JAVA之面向对象(封装,继承和多态)

    ------- android培训.java培训.期待与您交流!---------- 面向对象 一.面向对象概述 定义: 面向对象(Object Oriented,OO)是软件开过过程中使用一种思维方 ...

  7. 黑马程序员_JAVA之面向对象

    ------- android培训.java培训.期待与您交流!---------- 面向对象 一.基本概述 定义:面向对象(Object Oriented,OO)是软件开过过程中使用一种思维方式 . ...

  8. 黑马程序员 JAVA基础 -面向对象(四)

    -----------android培训.java培训.java学习型技术博客.期待与您交流!------------ 在此,分享一下自己学习JAVA的学习心得.有不对的地方请帮忙改正,也希望对想学j ...

  9. 黑马程序员_Java基础面向对象

    ------- <a href="http://www.itheima.com" target="blank">android培训</a> ...

最新文章

  1. 算法之【仿竖式算法】
  2. Python笔记-windows平台中Flask打包成exe
  3. go json的key为数字怎么解析_golang向interface{}解析json时把所有的数字都当成float64...
  4. html 折叠焦点图切换,jQuery层叠式图片切换焦点图插件
  5. 在 Python 中使用函数式编程的最佳实践!
  6. 区块链 以太坊 三元组是什么 state root transaction root receipt root
  7. ai人工智能图片修复_潜在客户追踪已中断,以及如何使用AI和自动化进行修复...
  8. python美团外卖_美团外卖不满意分析_Python和Excel
  9. @Scheduled定时器,每月1号执行
  10. KVM虚拟化介绍和安装使用方法
  11. 深入理解Java7.pdf
  12. 9 摄像头视频实时传输
  13. mysql5.7.76安装,MySQL 5.7.30 的安装/升级(所有可能的坑都在这里)
  14. 数据结构—回溯法、子集树、排列树
  15. 华中科技大学计算机专业排名2018,2018华中科技大学专业排名及分数线 王牌专业有哪些...
  16. 百度AI攻略:实现人体姿态判定打分
  17. 佳能Canon PIXMA MG2510 打印机驱动
  18. 微平均 宏平均 微平均(准确率、召回率、f1-score相等) 以及 TP、TN、FP、FN的理解
  19. 张家辉章子怡获2014金像奖影帝影后 一代宗师获多奖项
  20. AcWing数学知识

热门文章

  1. 广告无处不在,如何利用广告去推广自己的产品?
  2. 雅虎yisou.com网站名是否的剽窃!!!
  3. spring data JPA中@Modifying 注解完成新增操作
  4. java中单引号和双引号有什么区别?
  5. share一下美团面试经历
  6. GStreamer 进阶
  7. 狂暴者 pat basic 练习二十一 个位数统计
  8. 数据库基础知识汇总(一)
  9. Java类加载机制揭秘
  10. 亿级流量架构:服务器扩容思路及问题分析