类是对象的抽象,是用于创建对象的模板。 面向对象开发时,通常在项目的问题域中分析现实中的实体,将同类实体的特征、属性、功能、行为等抽象出来,形成类结构。
类主要由属性、构造方法、访问器和一般方法组成。
属性——常被称为字段(Field)或成员变量(Member Variable)。
(1) 属性定义需要初始化 (2)静态属性
构造方法——用于创建对象的特殊函数, 用constructor命名,用new加类名来调用构造 方法创建对象。
访问器——获取和设置属性值的特殊方法, 用关键字get定义访问器,用关键字set定义存储器。
方法—— 是复用代码的最基本单位。
1. 类的定义
class 类名 {
修饰符 属性名 : 类型
constructor(参数名 : 类型, ...) {
构造体
}
修饰符 函数名(参数名 : 类型, ...) {
函数体
}
get 访问器名(): 类型{
… return …
}
set 存储器名() {参数名 : 类型, …} {
… this.属性=参数 …
}
}
2. 类的应用举例
//定义一个 Person 类,它有 name 和 age 两个属性,以及一个 greet 方法。 class Person { // 属性声明,可以用修饰符修饰,比如 public, private,protected。 private name: string; private age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } //访问器 get Name() { return this.name; } set Name(value: string) { this.name = value; } get Age() { return this.age; } set Age(value: number) { this.age = value; } greet() { console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`); } } let person1=new Person('John', 30); person1.greet(); // 输出: Hello, my name is John and I'm 30 years old. person1.Name='Tom'; person1.Age=25; person1.greet(); // 输出: Hello, my name is Tom and I'm 25 years old.