public[default], protect[子类], private
修饰作用: 参考 class.md 「访问权限修饰符」 章节
修饰范围: 类成员(属性, 构造, 方法, 参数属性)。不可修饰接口成员
参数属性: 【只允许在构造函数实现中使用参数属性。】
参数属性是一种简化的写法。 ```typescript // 如下是 public。 private, protected 同理。 class P { constructor(public a: number) {}
// error : 只允许在构造函数实现中使用参数属性。
name(public a: number): void {} } new P(1).a;
// 等价于 class P1 { public a: number constructor(a: number) { this.a = a; } } new P(1).a; ```
readonly
修饰作用: 只读
修饰范围: 类, 接口属性. [“readonly” 修饰符仅可出现在属性声明或索引签名中。]
抽象类: abstract
修饰作用: 参考 class.md 「静态成员」 章节
修饰范围: 类, 接口属性. [“readonly” 修饰符仅可出现在属性声明或索引签名中。]
注意点:静态成员可以被继承
<T>
修饰作用: 延迟提供类型, 参考 「泛型」
修饰范围: 类,接口,方法, 函数
注意点:
import
export
class A extends B ...
修饰作用: 声明继承关系。需要两个操作数
修饰范围:类/接口 和 类、抽象类、接口 之间描述继承关系【类实现接口】, 泛型约束: <K extends T>
注意点:单继承
class A mplements classB { ... }
修饰作用: 实现,一般是实现抽象描述。
修饰范围: 类实现接口, 类实现类【mixins】 参考 mixins.md 章节
注意点:多实现
private static readonly xx: any;