Typescript 面向对象 类和接口 权限 readonly和private
类:定义了一切事物的抽象特点
对象:类的实例
面向对象三大特征:
封装: 隐藏内部实现,仅对外提供公共接口
继承: 子类继承父类,具有父类的属性和方法
多态: 在重写或实现相关属性方法时,不同的子类可以有不同的实现
属性访问权限
private: 限制属性只能在本类中访问,子类和实例都不能访问
protected: 限制本类和子类中使用,实例不能使用。可以理解为遗产
public: 无限制
const、readonly 和 private
const 用于定义一个内存地址不可被修改的变量
readonly作用于变量,表示属性不可被修改
private作用域属性,表示属性是否可以被访问
类和接口
一个类只能由一个父类,但可以实现多个接口
接口之间也可以相互继承
除了可选属性允许不被实现,类必须在数量和类型上实现接口中的所有的属性方法
// 接口提取相同的特性
interface A {
A(): void;
}
interface B {
B(): string;
}
interface C extends A, B {
}
class ClassA implements C {
A() {
}
B(): string {
return ''
}
}