在 TypeScript 中,可以使用 class 關鍵字來建立一個類別,並且可以使用 constructor 來定義類別的屬性,以及 methods 來定義類別的方法:
class Person {
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
name: string;
age: number;
sayHello() {
console.log(`Hello, my name is ${this.name}`);
}
}
建立類別的實例
在 TypeScript 中,可以使用 new 關鍵字來建立一個類別的實例:
let person = new Person("John", 20);
person.sayHello(); // Hello, my name is John
繼承
TypeScript 也支援類別的繼承,可以使用 extends 關鍵字來繼承一個類別:
class Student extends Person {
constructor(name: string, age: number, major: string) {
super(name, age);
this.major = major;
}
major: string;
sayHello() {
console.log(`Hello, my name is ${this.name}, I'm majoring in ${this.major}`);
}
}
靜態屬性和方法
TypeScript 也支援類別的靜態屬性和方法,可以使用 static 關鍵字來定義:
class Person {
static species = "Homo sapiens";
static isAdult(age: number) {
return age >= 18;
}
constructor(public name: string, public age: number) { }
sayHello() {
console.log(`Hello, my name is ${this.name}`);
}
}
console.log(Person.species); // Homo sapiens
console.log(Person.isAdult(20)); // true