本文实例讲述了javascript基于prototype实现类似OOP继承的方法。分享给大家供大家参考,具体如下:
这里要说明的是,公有属性(使用this.修饰符)可以被覆盖,私有属性(使用var 修饰符)不能被覆盖
子类不能访问父类的私有属性,父类的方法正常访问父类的私有变量。
function Vegetable(){ this.taste='delicious'; var a = 'I/'m Vegetable/'a!' this.fun1 = function(){ alert('Vegetable fun1 doing...'); } this.fun3 = function(){ alert(a); }}function Celery(){ var a = 'I/'m Celery/' a'; this.color = 'green'; this.taste = 'bad'; this.fun1a = function(){ alert('Celeryfun1 doing...'); } this.fun2 = function(){ alert('Celery fun2 doing...'); } this.fun4 = function(){ alert(a); }}Celery.prototype = new Vegetable();var stick = new Celery();var polymorphed = stick.taste;//alert(polymorphed);//alert(stick.color);//stick.fun1();//stick.fun2();//stick.fun3();stick.fun4();
希望本文所述对大家JavaScript程序设计有所帮助。
新闻热点
疑难解答