面向对象编程(OOP)
面向对象编程是一种程序设计范型。 将对象作为程序的基本单元,将程序和数据封装其中,以提高程序的重用性、灵活性、扩展性。
1.对象封装
var ClassName = function(params){
//私有属性, 仅特权方法能访问
var private = xxx;
//特权方法,访问修改私有属性
this.getPrivate = function(){};
this.setPrivate = function(){};
//公有属性
this.publicParams = yyy;
//公有方法
this.publicFunc = function(){};
}
通过this能访问的都属于公共属性,prototype 对象中的都可以通过this访问,所以通过prototype 扩展的都是公共属性。
创建对象的安全模式
安全模式可以让对象不必用new的方式调用
var ClassName = function(params){
if(this instanceof ClassName){
....//执行代码
}else{
return new ClassName(params)
}
}
2.继承
1.类式继承
2.构造函数继承
3.组合继承
4.原型式继承
5.寄生式继承
6.寄生组合式继承
7.多继承
3.多态
多态就是同一种方法多种调用方式。
function add(){
var arg = arguments,
len = arg.length;
switch(len){
case 0:
return 10;
case 1:
return 10+arg[0];
case 2;
return arg[0]+arg[1];
}
}
//add 多种调用方式
add()//10
add(5)//15
add(1,2)//3
未完待续……