相对于HTML服务于内容,CSS服务于表现的稳定,JavaScript这些年来发展迅猛,从最初服务于web页面交互行为,到如今的node,游走服务器领域,无不证明着自己已不是当初的“小玩意”。
面向对象的JavaScript
对象: “事物” 在程序设计语言中的表现形式。
类
对象之间具有共同的组成特征(如:啄木鸟,老鹰 = 鸟类)
封装
- 对象相关的属性(如:人的【身高、体重...】)
- 基于对象属性的基础上的行为(如:人(腿,嘴...)的行为【跑,说话...】)
聚合
其实就是让不同【属性+行为】的对象组合成一个更强大的对象(如:【cpu + 主板 + 内存条...】=> 电脑)
继承
假如你有一个普通的箱子,但是你想要一个红色的箱子,而且拥有各种自动化的功能。这时你应该把这个普通的箱子改造成你想要的【红色+功能】的箱子。
这个过程就是【对象的继承】最后结果,所以【对象的继承】就是对现有事物的重用。
多态
不同对象通过相同的方法,实现各自的行为的能力。
概念图表
描述 | 概念 |
---|---|
猫 | 【对象】 |
黑色毛发的猫 | (黑色毛发)【属性】 |
一个会说话的猫 | (说话)【行为】 |
猫是哺乳动物 | (哺乳动物)【类】 |
猫有【眼,腿,...】,能【跑,叫唤】 | 封装 |
我不知道小花猫的血型是什么 | (血型?)【信息隐藏】 |
有只猫属于一个叫gi的群体,群体中有很多这种猫 | 聚合 |
一只老虎生了一个花猫,这只花猫有老虎大部分的能力 | 继承 |
人类的外观不一,但正常情况下都会说话,可能方言不同 | 多态 |