首頁 >web前端 >js教程 >Javascript中什麼是私有成員、受保護成員、靜態成員實例分析

Javascript中什麼是私有成員、受保護成員、靜態成員實例分析

伊谢尔伦
伊谢尔伦原創
2017-07-27 11:03:021874瀏覽

其實通俗的講類就是物件的模板,為了增強JS的OO特性,受mootoos框架啟發我們可以使用一個JSON物件來描述這個物件的模板。在這個範本中我們可以模擬實作私有成員,受保護成員,靜態成員。

這是一個在JS中模擬的類別定義語法,程式碼中Class是一個自訂函數,它接受兩個參數,第一個參數是類別名稱、第二個參數是一個JSON用來一個物件的模板。在這個JSON物件中其中欄位 "extend",,"initialize","static" 為一些預先定義關鍵字,所表示的意義與基於類別的傳統OO語言相似。字段accessabe用來描述一個物件成員的可訪問性,取值為("private","protected","public")在Class函數中會對這些關鍵字進行特殊處理,使其所修飾的成員具有相應的存取權限。 

Class("Person" ,{ 
//继承 
extend: Animal, 
//构造函数 
initialize:function(name,sex){ 
this.name = name; 
this.sex = sex; 
Person.count++; 
}, 
//静态成员 
static:{ 
count: { 
accessabe:"private", 
value: "" 
} 
}, 
//实例成员 
age: {//私有属性成员 
accessabe:"private", 
value:0 
}, 
//公用属性 
name: { 
accessabe:"public", 
value:"" 
}, 
sex:{ 
accessabe:"public", 
value: "" 
}, 
//方法 
sleep: {//受保护方法 
accessabe:"protected", 
value: function(){ 
} 
}, 
say: {//公用方法 
accessabe:"public", 
value: function(){ 
retun (this.age-1) 
} 
} 
}); 
//调用 
var xiaom = new Person("小明","男"); 
xiaom.age //私有属性不能访问 
xiaom.sleep() //受保护方法不能访问 
xiaom.say() //公用方法可以访问


以上是Javascript中什麼是私有成員、受保護成員、靜態成員實例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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