1、封装
- 两大概念 : 公有 和 私有
- 1、公有:
公有方法和公有属性
实例化出来的对象能够直接访问到的属性和方法就是公有的属性和方法。 - 2、私有:
私有方法 和 私有属性
对象不能直接访问到的属性和方法 就是私有的属性和方法。
2、继承
-
当子类中的属性和方法跟父类重复的时候,子类会覆盖父类的方法和属性
-
1、原型继承的第一种方法
子类.prototype = new 父类()
子类.prototype.constructor = 子类 -
将父类 实例化出来一个对象,然后使用这个对象直接覆盖了子类的原型对象,但是这个操作会将 子类原型对象的构造函数改写成父类,所以我们需要将其构造函数在改写回来
-
2、原型对象的第二种写法
子类.prototype = 父类.prototype
子类.prototype.constroctor = 子类 -
直接使用父类的原型对象来覆盖子类的原型对象,好处是节省浏览器内存,提高效率
-
但是这个方法有限制 => 父类的所有属性和方法都必须写在其原型对象中
-
3、构造函数式继承
使用构造函数中提供的方法,来完成继承,只能继承this写的属性和方法,不能继承原型上的属性和方法
-
一 、使用call()方法,进行继承
有多个参数
第一个参数 永远都是this
剩下的参数都是父类实例化出来的时候,所需要传递的参数
这里所穿的参数顺序,严格按照父类中形参设置的顺序 -
二、使用apply方法继承
只有两个参数
第一个参数 this
第二个参数是一个数组
数组中的元素,是父类实例化的时候,所需要传递的参数
数组中元素的数据,严格按照父类中形参的设置顺序。
3、多态
- 多态研究的是对象之间相同的方法(行为)
- 将多个对象相同的方法封装在一起
- 根据所传入的对象的不同
- 其所执行的结果也不相同
网友评论