混合对象
# 混合对象
面向类的设计模式:实例化(instantiation)、继承(inheritance)和 (相对)多态(polymorphism)。
多态 父类的通用行为可以被子类用更特殊的行为重写。
迭代器模式、观察者模式、工厂模式、单例模式,等等。面向对象是优秀代码的基础。
类理论
近似类的语法元素 new 和 instanceof
class 关键字
类的机制
类实例是由一个特殊的类方法构造的,这个方法名通常和类名相同,被称为构造函数。这个方法的任务就是初始化实例需要的所有信息(状态)。
类构造函数属于类,而且通常和类同名。
类的继承
extend
混入
混入:显式和隐式。mixin(..)。
// 非常简单的 mixin(..) 例子 :
function mixin( sourceObj, targetObj ) {
for (var key in sourceObj) {
// 只会在不存在的情况下复制
if (!(key in targetObj)) {
targetObj[key] = sourceObj[key];
}
}
return targetObj;
}
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
小结
类是一种设计模式。