第四章 混合对象”类“

4.混合对象”类“

面向类的设计模式:
实例化、继承、多态
本章将介绍 面向对象编程理论

4.1 类理论

4.1.1 封装

面向对象编程强调 数据和操作数据的行为是关联的
因此好的设计是把数据以及它相关的行为打包( 封装),这在正式的计算机科学中有时被称为 数据结构

4.1.2 继承

4.1.3 多态

父类的通用行为可以被子类用更特殊的行为重写。
不推荐使用:会降低代码的可读性和健壮

4.1.4 设计模式

迭代器模式,观察者模式,工厂模式,单例模式

4.1.5 js中的”类“

new instanceof
ES6: class
类是一种设计模式,可用一些方法实现累的功能

4.2 类的机制

在许多面向类的语言中,”标准库“会提供 Stack类,它是一种”栈“的数据结构,内部会有一些变量来存储数据,同时提供一些公有的可访问行为(方法),从而让代码可以和(隐藏的)数据进行交互(添加,删除)
js语言中并不提供这些...

4.2.1 建造

类和实例的概念来源于 房屋构造,抽象到具体

4.2.2 构造函数

构造函数:类实例由一个特殊的类方法构造,这个方法名和类名相同,被称为构造函数
new来调用

4.3 类的继承

4.3.1 多态

4.3.2 多重继承

js本身不提供多重继承功能

4.4 混入

来实现多重继承
js中只有对象,并不存在可以被实例化的类,一个对象并不会复制到其他对象,他们会被关联起来

4.4.1 显示混入

A.method.call(B)

4.4.2 隐式混入

通过在构造函数调用或方法调用中使用A.method.call(this)
 
“类”意味着复制
在js中,模拟类得不偿失,不推荐使用





转载于:https://www.cnblogs.com/Natsume5233/p/6488855.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值