Bookmark and Share

Lee's 程序人生

HTML CSS Javascript XML AJAX ATLAS C# C++ 数据结构 软件工程 设计模式 asp.net Java 数字图象处理 Sql 数据库
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理
网上关于对象化的javascript的资料很多,推荐看下《面对对象JAVASCRIPT编程》

1、继承的实现。
    js的继承主要依靠属性:this.base = parentObj 用来指向父类。还有属性this.base()用来调用父类的构造方法。
  例子如下
  1. function parent(msg)  
  2. {  
  3.   alert('parent __construct'+msg);  
  4. }  
  5.   
  6. function child(msg)  
  7. {  
  8.   this.base = parent;  
  9.   this.base(msg);    
  10. }  
  11. var obj = new child('test');  


2、重载。重载相对简单。

3、抽象方法。
     目前我还没有发现JS支持抽象,只能模拟实现(不是完整意义的抽象,只是实现父类对子类方法的调用)。
  1. function parent(msg)  
  2. {  
  3.   alert('parent __construct'+msg);  
  4.     
  5.   this.callchild = function(_var)  
  6.   {  
  7.     this.childFunction(_var)  
  8.   }  
  9. }  
  10.   
  11. function child(msg)  
  12. {  
  13.   this.base = parent;  
  14.   this.base(msg);    
  15.   this.childFunction = function(_var)  
  16.   {  
  17.     alert('child ' + _var);  
  18.   }  
  19. }  
  20. var obj = new child('test');  
  21. obj.callchild('this is a test');
我要啦免费统计