Typescript类中extends和implements的作用
在ES6中,类的继承可以通过extends实现。
class Animal { name; sayHello(){} } class Dog extends Animal {} // const dog = new Dog(); // 在Dog的实例dog中也会存在name属性和sayHello方法,因为Dog继承自Animal类
在TS的类中,extends同样也是用于类的继承:
class Animal { name: string = ''; sayHello() { } } class Dog extends Animal {} const dog:Dog = new Dog();
// 和ES6中类似,在Dog的实例dog中也会存在name属性和sayHello方法,因为Dog继承自Animal类
在TS类中,类除了可以继承父类还可以继承接口,也叫实现接口,通过关键字implements来实现。
interface Animal { food: string eat(food: string): void } // Cat类实现Animal接口的时候需要能够兼容Animal接口才行,否则会报错。 class Cat implements Animal { food: string = 'fish'; eat(food: string): void { } } // const cat: Cat = new Cat();
温馨提示:extends在TS的类中是表示继承的作用,但是在泛型中却不是代表继承。具体代表什么可以参考这篇文章:https://www.cnblogs.com/brucefq/p/16643340.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现