网上关于对象化的javascript的资料很多,推荐看下《面对对象JAVASCRIPT编程》。
1、继承的实现。
js的继承主要依靠属性:this.base = parentObj 用来指向父类。还有属性this.base()用来调用父类的构造方法。
例子如下
2、重载。重载相对简单。
3、抽象方法。
目前我还没有发现JS支持抽象,只能模拟实现(不是完整意义的抽象,只是实现父类对子类方法的调用)。
1、继承的实现。
js的继承主要依靠属性:this.base = parentObj 用来指向父类。还有属性this.base()用来调用父类的构造方法。
例子如下
- function parent(msg)
- {
- alert('parent __construct'+msg);
- }
- function child(msg)
- {
- this.base = parent;
- this.base(msg);
- }
- var obj = new child('test');
2、重载。重载相对简单。
3、抽象方法。
目前我还没有发现JS支持抽象,只能模拟实现(不是完整意义的抽象,只是实现父类对子类方法的调用)。
- function parent(msg)
- {
- alert('parent __construct'+msg);
- this.callchild = function(_var)
- {
- this.childFunction(_var)
- }
- }
- function child(msg)
- {
- this.base = parent;
- this.base(msg);
- this.childFunction = function(_var)
- {
- alert('child ' + _var);
- }
- }
- var obj = new child('test');
- obj.callchild('this is a test');