面向对象和面向过程:(自我理解,仅供参考)

面向对象:这里不能把对象通俗的理解为某一个事物,如男/女朋友,俗话说"万物皆对象."

面向对象是一个特别抽象的概念,打个比方:

比如我喜欢一种美食,我在我的观念里可以脑补它的酸甜辣的程度,口感以及咀嚼

时的感觉,而我通过语言告诉你这个东西是酸的还是辣的,这个东西不存在,只是我心中

所想象出来的,我对它很清楚,但通过语言告诉你,你并不会知道这个东西是什么样的.所

以说,面向对象是一种抽象的概念.

而面向过程呢,就是指我脑补出来的这个东西,比如我要吃到它,首先我应该想好需

要准备什么食材,调料,然后去超市购买,回来以后先给他洗干净,然后需不需要腌制呀,

去腥呀,然后是煮还是炒,放多少调料,这个过程就是面向过程.

举个简单的例子

有一天你想吃水煮肉片了,你有两种选择:

1.去饭店说:老板,来份水煮肉片,然后就可以吃了

2.去菜市场买肉,水煮肉片调料,豆芽,白菜,豆腐皮等等,然后回家自己做

1就是面向对象 而2就是面向过程

面向对象和面向过程的优缺点:

面向过程:

优点:性能比面向对象好,因为类调用时需要实例化,开销比较大,比较消耗资源。
缺点:不易维护、不易复用、不易扩展.

面向对象:

优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统 更加灵活、更加易于维护 .
缺点:性能比面向过程差

面向对象OOP的三大特征:

可以这样理解:我是一个上帝,我需要造人.人需要有五官,四肢等特征,我就要根据这些特征进行造人

,不能胡编乱造也就是(封装),其次需要造的数量太多了,我一个人忙不过来,我就需要一些帮手,但我

不想把这个方法教给我的帮手,我就造好模板,然后让帮手去造四肢五官,这就是(继承),然后我造出来

的人都太相似,没有自己的独特点,我就想着在原有基础上进行修改,就有个男人,女人,高的,矮的,胖的

瘦的等不同的人,并且这些特征会随着父母遗传给下一代(多态)

封装

封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。

继承

面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。

多态

多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。

面向对象(OOP)概念理解,通俗易懂相关推荐

  1. 笔记37 笨办法学python练习43面向对象OOP的游戏代码(二)代码的反复理解

    笔记37 笨办法学python练习43面向对象OOP的游戏代码(二)代码的反复理解 连续贴着这个练习43的代码折腾了整整两天,把那些英文文本翻译为中文文本,重新装进这个代码之中.本想一段一段的运行,发 ...

  2. 面向对象编程(OOP)理解

    面向对象与叫化鸡比喻 面向对象的比喻实在太多了.不知哪个比喻更能让你明白呢? 理解面向对象编程 (Object Oriented Programming 简称OOP) 所谓"面向对象编程&q ...

  3. 面向对象(OOP)基本概念

    面向对象(OOP)基本概念 {#toc_0} 面向对象编程 ------ Object Oriented Programming 简写 OOP 目标 {#toc_1} 了解 面向对象 基本概念 面向对 ...

  4. 面向对象(OOP)基本概念及基本语法

    面向对象(OOP)基本概念 面向对象编程 -- Object Oriented Programming 简写 OOP 目标 了解 面向对象 基本概念 面向对象基本概念 我们之前学习的编程方式就是 面向 ...

  5. Python 面向对象(OOP)基本概念

    面向对象编程 -- Object Oriented Programming 简称 OOP 目标 了解 面向对象 基本概念 0.1 面向对象基本概念 面向过程 和 面向对象,是两种不同的 编程方式 对比 ...

  6. 笔记36 笨办法学python练习43面向对象OOP的文字理解(一)

    笔记36 笨办法学python练习43面向对象OOP的文字理解(一) 先仔细看了本练习的文本,感到一个笔记写不下来这个复杂的练习过程,那就先把文字理解的部分先来完成,再用一篇笔记来完成代码的理解. 一 ...

  7. 面向对象编程概念_如何向6岁的孩子解释面向对象的编程概念

    面向对象编程概念 by Alexander Petkov 通过亚历山大·佩特科夫(Alexander Petkov) Have you noticed how the same cliche ques ...

  8. python面向对象的概念_Python面向对象概念和三要素

    语言分类 1.面向机器 抽象成机器指令,机器容易理解 代表:汇编语言 2.面向过程 做一个事情,排出步骤,第一步干什么,第二步干什么,如果出现情况A怎么处理,如果出现情况B做什么处理. 问题规模小,可 ...

  9. java怎样用类模板创建对象_java入门(十四) | 面向对象(OOP)之类和对象

    上一期是变量,在java中变量总是无处不在,而变量其意就是可以改变的数,在一般情况下我们可以以变量类型,变量名,变量值来描述它 这一期是给面向对象(OOP)开了一个头,对他的概念,三大特征有了一个基础 ...

  10. 第一阶段:Java基础总复习一一一和一一一面向对象OOP总复习

    一.Java基础 0.Maven的介绍: 官网:https://maven.apache.org/download.cgi (1)Maven是什么? Maven 是 Apache 开源组织奉献的一个开 ...

最新文章

  1. R语言ggplot2可视化:在可视化图像中添加对角线(diagonal line)
  2. 【错误记录】Android Studio 编译报错 ( AppCompat does not support the current theme features )
  3. 24小时学通linux视频教程下载
  4. SpringBoot用Servlet处理请求
  5. PyCharm设置背景颜色
  6. mysql 批量数据导入报错_Mybatis 批量插入数据 关于Oracle 批量插入报错:ORA
  7. python `__slots__`
  8. group policy client服务未能登录,拒绝访问
  9. Android系统Google TTS 语音数据包安装步骤
  10. 简单易用的程序多开器软件-V5程序多开器提供下载
  11. 刘宇凡:罗永浩的锤子情怀只能拿去喂狗
  12. mybatis 查询忽略字段
  13. nvme装系统不能自引导_怎么让老电脑实现UEFI启动NVME SSD固态硬盘进系统方法
  14. mac如何把html转成word,Pages怎么保存为word格式 pages保存格式教程
  15. 根据现在的时区,判断其他时区的时间,包含夏令时。
  16. 博图PLC程序 停车场控制系统
  17. 图解数据在网络中的传输过程
  18. 视频教程-清华-尹成老师-Python爬虫day13-Python
  19. 生成式模型(VAE+GAN)
  20. 折半查找法(二分法)流程图

热门文章

  1. vs2013调试nginx
  2. 某公司的雇员分为以下若干类: Employee:这是所有员工总的父类.属性:员工的姓名,员工的生日月份。 方法:getSalary(intmonth)
  3. 51单片机温控风扇仿真原理图 C语言程序,AT89C51单片机的电风扇控制系统设计+流程图+仿真图.doc...
  4. 360产品无法安装,此程序被组策略阻止
  5. 甘肃人社生物识别认证系统服务器,甘肃人社生物识别认证系统
  6. 资深UI设计师告诉你:交互设计师必须具备的4项能力
  7. excel两列数据对比找不同_比Vlookup好用10倍,它才是Excel函数中的No.1
  8. 2022年人工智能数据标注产业现状分析
  9. Exception in thread main java.lang.NoSuchMethodException: xxx.main([Ljava.lang.String;)
  10. verilog——三八译码器