typescript 中的類(lèi)是定義對(duì)象藍(lán)圖的機(jī)制,提供數(shù)據(jù)和行為封裝。類(lèi)包含屬性(字段)、構(gòu)造函數(shù)(初始化屬性)和方法(定義行為)。要?jiǎng)?chuàng)建類(lèi)實(shí)例,請(qǐng)使用 new 運(yùn)算符。成員可以通過(guò)點(diǎn)運(yùn)算符訪問(wèn)。typescript 支持類(lèi)繼承,允許從基類(lèi)創(chuàng)建派生類(lèi)并重用其屬性和方法,從而實(shí)現(xiàn)代碼重用、擴(kuò)展性和多態(tài)性。
如何理解 TypeScript 中的類(lèi)
類(lèi)是 TypeScript 中定義對(duì)象藍(lán)圖的一種機(jī)制,它提供了數(shù)據(jù)和行為的封裝。要理解 TypeScript 中的類(lèi),讓我們從一個(gè)簡(jiǎn)單的例子開(kāi)始:
class Person { name: string; age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } greet() { console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`); } }
類(lèi)聲明
類(lèi)的聲明從關(guān)鍵字 class 開(kāi)始,后面跟類(lèi)名。類(lèi)名采用大駝峰式命名法。
類(lèi)成員
類(lèi)可以包含以下類(lèi)型的成員:
- 屬性(字段):定義了類(lèi)的狀態(tài),如 name 和 age。
- 構(gòu)造函數(shù):在創(chuàng)建類(lèi)實(shí)例時(shí)調(diào)用的特殊方法,用于初始化屬性。
- 方法:定義了類(lèi)的行為,如 greet 方法。
創(chuàng)建類(lèi)實(shí)例
要?jiǎng)?chuàng)建類(lèi)實(shí)例,我們可以使用 new 運(yùn)算符:
const person1 = new Person("John", 30);
訪問(wèn)類(lèi)成員
可以通過(guò)點(diǎn)運(yùn)算符訪問(wèn)類(lèi)實(shí)例的成員:
console.log(person1.name); // John person1.greet(); // Hello, my name is John and I am 30 years old.
類(lèi)繼承
TypeScript 支持類(lèi)繼承,允許從基類(lèi)派生新類(lèi)并重用其屬性和方法:
class Student extends Person { studentId: string; constructor(name: string, age: number, studentId: string) { super(name, age); // 調(diào)用基類(lèi)的構(gòu)造函數(shù) this.studentId = studentId; } }
繼承的好處
類(lèi)繼承提供了以下好處: