首頁 >web前端 >js教程 >javascript基於prototype實作類似OOP繼承的方法_javascript技巧

javascript基於prototype實作類似OOP繼承的方法_javascript技巧

WBOY
WBOY原創
2016-05-16 15:25:171212瀏覽

本文實例講述了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程式設計有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn