| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 【TypeScript 专题】之 Ts 中的类(class) -> 正文阅读 |
|
[JavaScript知识库]【TypeScript 专题】之 Ts 中的类(class) |
系列文章,收藏不走丢哦 一、什么是类虽然 JavaScript 中有类的概念,但是可能大多数 JavaScript 程序员并不是非常熟悉类,毕竟大部分人使用它的频率并不高,所以我们来学一学类的基本使用。
1.1 属性和方法使用 class 定义类,使用 通过 new 生成新实例的时候,会自动调用构造函数。 1.2 类的继承使用 1.3 存取器使用 getter 和 setter 可以改变属性的赋值和读取行为: 1.4 实例属性1.1 小节里,想要初始化就需要在 constructor 内进行定义,在 ES7 中可以直接在类里面定义: 1.5 静态属性同样在ES7 提案中,可以使用 二、TypeScript 中的类2.1 基本使用下面看一个使用类的例子: 你会发现我指定了 msg 的类型,并进行赋值操作了。 2.2 继承在 TypeScript 里,我们可以使用常用的面向对象模式。 基于类的程序设计中一种最基本的模式是允许使用继承来扩展现有的类。 看下面的例子: 通过 extends 关键字。 因为 Dog 继承了 Animal 的功能,因此我们可以创建一个 Dog 的实例,它能够 2.3 修饰符TypeScript可以使用几种访问修饰符分别是:
理解public在上面的例子里,我们可以自由的访问程序里定义的成员。就会注意到我们在之前的代码里并没有使用 public 来做修饰; 你也可以明确的将一个成员标记成 public。我们可以用下面的方式来重写上面的 Animal 类: 理解private当成员被标记成 理解 protectedprotected 修饰符与 private 修饰符的行为很相似,但有一点不同,protected 成员在派生类中仍然可以访问。例如: 注意,我们不能在 理解readonly你可以使用readonly关键字将属性设置为只读的。 只读属性必须在声明时或构造函数里被初始化。 2.4 存取器和ES6中的一样,TypeScript同样支持通过 还是那个Animal类,我们循序渐进的添加 上面的例子我们要加一个set和get: 2.5 静态属性到目前为止,我们只讨论了类的实例成员,那些仅当类被实例化的时候才会被初始化的属性,我们也可以创建类的静态成员,同样和ES6一样,我们来看一下: 2.6 抽象类抽象类做为其它派生类的基类使用。它们一般不会直接被实例化。不同于接口,抽象类可以包含成员的实现细节。
抽象类中的抽象方法不包含具体实现并且必须在派生类中实现。抽象方法的语法与接口方法相似。两者都是定义方法签名但不包含方法体。 然而,抽象方法必须包含abstract关键字并且可以包含访问修饰符。 2.7 把类当做接口使用类定义会创建两个东西:
因为类可以创建出类型,所以你能够在允许使用接口的地方使用类。 写在最后本篇文章是《Typescript入门首次》的第四篇文章,本篇文章主要聊一聊Ts中的类是什么样子的,旨在让我们在类这部分从ES6过渡到ts能更平滑一些,欢迎小伙伴们积极踊跃的互动,我会及时回复的哦,下一篇我们聊一聊由类衍生出来的专题《类与接口》 如果对你有帮助的话不妨收藏一下吧 系列文章传送门:
关于我
其他沉淀
|
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 8:55:45- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |