用原型继承方法

用原型继承方法

一:每个类都有一个原型,即Prototype.它是一个对象。我们用
trace( typeof  MovieClip.prototype) //  object   
trace( typeof  color.prototype) //  object 
这是区分类和对象的好方法。math 不是类,我们用 
trace( typeof  Math.prototype) //  undefined
这就是类和对象的区别了。 
二:每个实例又都有一个__proto__属性。我们用 

_root.createEmptyMovieClip( " mc " , 1 );   
trace(
typeof  mc.__proto__); //  object  
那么实例和类的关系就不难知道了。是将实例的__proto__和类的prototype相连起来。接上的例子我们用:
trace(mc.__proto__ == MovieClip.prototype) //  true  
这就为我们继承带来了方便。 
三:继承的标准方法是用 
new    
child.prototype
= new  parent();  
我们已经理解了实例的创建,也就不难理解这句了。是将child的原型的属性__proto__和parent相连。因此成了 父子类。这也说明对象是有__proto__的。 既然对象是有__proto__的,那么Math 也应该有,是的。我们用 
trace( typeof  Math.__proto__); //  object  
四:用原型直接建立继承 
我们知道了上面的事实,就可以直接用语句来建立继承。 
child.prototype.__proto__ = parent.prototype;  
即可。呵呵,这可能是众所周知的事实,而我还在说,不好意思,我是新来的

你可能感兴趣的:(用原型继承方法)