面对对象
2017-06-26 本文已影响0人
礼貌源于陌生
面对对象语言的特性:
1. 封装。
2. 继承。
3. 多态(父类引用指向子类实例)。
我对面对对象的理解:
1. 类:某一类的静态属性;
2. 对象:某一类具体的某一个实例;
如何用JavaScript得到对象:
1: 通过new Object() 得到;
2: 使用Json 得到;
3: 使用工厂模式得到;(解决了对象无法重用的问题,但是无法判断所得到的类型。)
4: 使用构造函数得到;(解决了无法判断所得到类型的问题,但是形成了闭包函数,造成不必要的内存占用)注:如果把构造函数中的方法函数,转移到构造函数外,会扩大方法函数的作用域,不利于开发!
5: 封装!
封装------JavaScript的原型(prototype)
1:

2:

3:

4:

注:原型中的值不会被覆盖,只是查找的顺序问题。
原型重写:
用Json数据代替对象.prototype.属性名;
