通俗易懂的解释什么是面向对象

什么是对象

对象是一个整体,对外提供一些操作
就像黑盒子,不了解内部结构,但知道表面的各种操作   比如遥控器这个对象

什么是面向对象

在不了解原理的情况下会使用功能
使用对象时,只关注对象提供的功能,不关注内部实现和细节,比如jquery
面向对象是一种通用思想,并非编程中能用,任何事情都可以

什么是抽象

重点一个抽字,把主要的特征、跟问题相关的特征给抽离出来
比如你做一个员工管理系统,你就不需要关心他的体重,结没结过婚,如果你是做婚恋网站,那这些个体重结没结过婚就要记录下来。这就是某个对象跟问题相关的特征抽离出来。

封装

看不到里面的东西,用好表面的功能就行了

继承

从已有对象上,继承出新的对象
       多重继承  盒子:能装东西
                汽车:有轮子,可以跑
       盒子+汽车=集装箱(能装东西,会跑) 实际上很少用多重继承,因为会使程序变得比较混乱

对象的组成

  方法+属性
方法——函数:过程、动态的
属性——变量:状态、静态的

prototype原型

可以理解成css的样式
Css                                                js
Class            一次给一组元素加样式                 原型
行间样式          一次给一个元素加样式                 给对象加事件

总结

用构造函数加属性

用原型加方法
时间: 2024-12-24 11:52:31

通俗易懂的解释什么是面向对象的相关文章

【转】能否用讲个故事的方式,由浅入深,通俗易懂地解释一下什么是天使投资,VC,PE.

能否用讲个故事的方式,由浅入深,通俗易懂地解释一下什么是天使投资,VC,PE 今天在知乎上看到一篇文章,觉得值得一转的,Here. 我给楼主讲个完整点的故事吧.长文慎点,前方高能,自备避雷针.18岁以下者请在父母或监护人指导下阅读此文. ----------------------------------------------我是分割线------------------------------------------------------- 我和东尼大木是一起玩到大的朋友,也有共同的爱好.

爬取知乎如何通俗易懂地解释「协方差」与「相关系数」的概念?

'最喜欢通俗易懂地解释一个事情.', '<b>一.协方差:', '可以通俗的理解为:两个变量在变化过程中是同方向变化?还是反方向变化?同向或反向程度如何?', '你变大,同时我也变大,说明两个变量是同向变化的,这时协方差就是正的.', '你变大,同时我变小,说明两个变量是反向变化的,这时协方差就是负的.', '从数值来看,协方差的数值越大,两个变量同向程度也就越大.反之亦然.', '咱们从公式出发来理解一下:', '', '公式简单翻译一下是:如果有X,Y两个变量,每个时刻的“X值与其均值之差

python装饰器通俗易懂的解释!

python装饰器 刚刚接触python的装饰器,简直懵逼了,直接不懂什么意思啊有木有,自己都忘了走了多少遍Debug,查了多少遍资料,猜有点点开始明白了.总结了一下解释得比较好的,通俗易懂的来说明一下: 小P闲来无事,随便翻看自己以前写的一些函数,忽然对一个最最最基础的函数起了兴趣: 1 def sum1(): 2 sum = 1 + 2 3 print(sum) 4 sum1() 此时小P想看看这个函数执行用了多长时间,所以写了几句代码插进去了: 1 import time 2 3 def

Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释

遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题a,什么叫序列化和反序列化b,作用.为啥要实现这个 Serializable 接口,也就是为啥要序列化c,serialVersionUID 这个的值到底是在怎么设置的,有什么用.有的是1L,有的是一长串数字,迷惑ing.我刚刚见到这个关键字 Serializable 的时候,就有如上的这么些问题. 在处理这个问题之前,你要先知道一个问题,这个比较重要.这个Serializable接口,以及相关的东西,全部都在 J

[转]Java 之 Serializable 序列化和反序列化的概念,作用的通俗易懂的解释

原文地址:https://blog.csdn.net/qq_27093465/article/details/78544505 遇到这个 Java Serializable 序列化这个接口,我们可能会有如下的问题: 1.什么叫序列化和反序列化 2.作用.为啥要实现这个 Serializable 接口,也就是为啥要序列化 3.serialVersionUID 这个的值到底是在怎么设置的,有什么用.有的是1L,有的是一长串数字,迷惑ing. 我刚刚见到这个关键字 Serializable 的时候,就

如何通俗易懂地解释遗传算法?有什么例子?

遗传算法,核心是达尔文优胜劣汰适者生存的进化理论的思想. 我们都知道一个种群,通过长时间的繁衍,种群的基因会向着更适应环境的趋势进化,牛B个体的基因被保留,后代越来越多,适应能力低个体的基因被淘汰,后代越来越少.经过几代的繁衍进化,留下来的少数个体,就是相对能力最强的个体了. 那么在解决一些问题的时候,我们能不能学习这样的思想,比如先随机创造很多很多的解,然后找一个靠谱的评价体系,去筛选比较好的解,再用这些好的解像生小宝宝一样生一堆可能更好的解,然后再筛再生,反复弄个几代,得到的说不定就是近似最

关于PID 比例 微分 积分通俗易懂的解释

PID控制 一.前言 在工程实际中,应用最为广泛的调节器控制规律为比例.积分.微分控制,简称PID控制,又称PID调节.PID控制器问世至今已有近70年历史,它以其结构简单.稳定性好.工作可靠.调整方便而成为工业控制的主要技术之一. 所谓的PID系统,其实就是一个反馈系统.什么是反馈系统?当你在马路上悠闲的开着车的时候,前面的一个哥们的车突然减速,这时,你会毫不犹豫的踩刹车,这就是你的反馈系统在起作用.所以,反馈系统首先需要传感器获取反馈量(就像是你的眼睛在获取前面车的速度以及它和你之间的距离一

通俗易懂地解释JS中的闭包

1. "闭包就是跨作用域访问变量." [示例一] ? 1 2 3 4 5 6 7 8 9 var name = 'wangxi' function user () {  // var name = 'wangxi'  function getName () {  console.log(name)  }  getName() } user() // wangxi 在 getName 函数中获取 name,首先在 getName 函数的作用域中查找 name,未找到,进而在 user 函

如何才能通俗易懂的解释js里面的‘闭包’?

1. "闭包就是跨作用域访问变量." [示例一] var name = 'wangxi' function user () { // var name = 'wangxi' function getName () { console.log(name) } getName() } user() // wangxi 在 getName 函数中获取 name,首先在 getName 函数的作用域中查找 name,未找到,进而在 user 函数的作用域中查找,同样未找到,继续向上回溯,发现在