// 任何一個(gè)類 ,它的內(nèi)部都是以 constructor 方法開始的
class Parent{
constructor(name="wukong",weapon){
this.name=name
this.weapon = weapon
}
getName(){ // get方法,獲取實(shí)例對(duì)象中的屬性(不定義也可以,定義只是為了對(duì)獲得的數(shù)據(jù)做修改)
console.log(this.name)
}
setName(value){ // set方法,設(shè)置或修改實(shí)例對(duì)象中的屬性(不定義也可以,定義只是為了對(duì)要設(shè)置的數(shù)據(jù)做修改)
this.name = value
}
static tell(){ // 定義靜態(tài)方法時(shí),使用static 關(guān)鍵字
console.log('tell')
}
}
Parent.story = '西游記'; //定義靜態(tài)屬性,靜態(tài)屬性沒有關(guān)鍵字,所以在定義了類之后,直接添加
Parent.tell(); //調(diào)用靜態(tài)方法的時(shí)候,是在 類 上調(diào)用,而不是在 實(shí)例 上調(diào)用
console.log(Parent.story); // 查看靜態(tài)屬性,同樣也是在 類 上查看
var obj = new Parent('sunwk','jingubang!')
console.log(obj); // {name: "sunwk", weapon: "jingubang!"}
obj.getName(); // sunwk
obj.setName('tangsanzang')
console.log(obj); //{name: "tangsanzang", weapon: "jingubang!"}
class Child extends Parent{
constructor(name="bajie",weapon ){ // 指定了這個(gè)方法傳入的參數(shù),以及它的默認(rèn)值
super(name) // 使用super()的時(shí)候,就相當(dāng)于調(diào)用了父類中的constructor
// 并將子類中的name傳入,覆蓋父類中的name
this.weapon = "dingpa!" // 如果子類中需要添加新的屬性,必須在 super() 之后寫
}
}
var obj1 = new Child();
console.log(obj1) // {name: "bajie", weapon: "dingpa!"}
class 類
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 一、Math類 Math類中提供了一系列基本數(shù)學(xué)運(yùn)算和幾何運(yùn)算的方法; 該類的構(gòu)造方法被修飾為private,因此...
- 反射概念的引出問題1:1.對(duì)象有編譯類型和運(yùn)行類型 Object obj = new Date(); 編譯類型...
- 目標(biāo):實(shí)現(xiàn)一個(gè)輸入框,輸入之后其后會(huì)動(dòng)態(tài)的顯示輸入框內(nèi)字節(jié)長度 jquery封裝組件風(fēng)格實(shí)現(xiàn)組件 上訴代碼把所有的...
- Date() Date.parse() Date.UTC()Date.UTC(year, monthIndex, ...