前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >08-TypeScript中的类

08-TypeScript中的类

作者头像
用户1910585
发布于 2018-05-04 09:57:36
发布于 2018-05-04 09:57:36
1K00
代码可运行
举报
运行总次数:0
代码可运行

类的概念通常是在后端开发中实现的思想,比如C#、C++或Java,传统的JavaScript开发通过使用原型模式来模拟类的功能。在TypeScript中,天生就是支持类

的,可以让前端的开发更加具有面向对象思想开发的实现。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Doctor{
    public name:string;//默认不写就是public
    public getname():void {
        console.log("my name is:"+this.name);
    }
}

var doc1=new Doctor();
doc1.name="hcc";
doc1.getname();

后端开发的开发者都知道类有构造函数,在JavaScript中,通过定义函数和传递参数来模拟构造函数。在上述的代码中,在实例化Doctor类时,使用了默认构造函数。

在TypeScript中,可以显示的使用constructor关键字来定义构造函数,如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Wife{
    public name:string;
    constructor(name:string){
        this.name=name;
    }
    public getname():void{
        console.log("my wife name is:"+this.name)
    }
}

var wife=new Wife("hcc");
wife.getname();

另外,在后端开发语言中,属性和静态也是重要的概念,在上述代码中,需要在外部访问的我们定义为了公共字段,但不是属性的概念;另外方法的访问需要实例化类才能访问。在TypeScript中可以定义

属性,也可以通过static关键字定义静态类型(可以不实例化也能访问的成员),如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Book{
    constructor(bookname:string){
        this._bookname=bookname;
    }
    private _bookname:string;

    get BookName(){
        return this._bookname;
    }
    set BookName(bookname:string){
        this._bookname=bookname;
    }

    public static GetBookInfo(bookname:string){
          console.log(bookname);
    }
}

var book=new Book("Advanced C#");
console.log((book.BookName));
Book.GetBookInfo("Advanced Static C#")
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-09-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
09-TypeScript中的继承
在后端开发语言中,继承是非常重要的概念,继承可以让子类具有父类的成员和方法,通过实例化子类,就可以访问父类的成员和方法。 在JavaScript中,需要通过原型模式来模拟继承的实现。而在TypeScript中,天生就是支持继承的。 父类: class Doctor{ public name:string; public getname():void { console.log("my name is:"+this.name); } } 子类: class Advanc
用户1910585
2018/05/04
9920
【TypeScript】011-类
虽然 JavaScript 中有类的概念,但是可能大多数 JavaScript 程序员并不是非常熟悉类,这里对类相关的概念做一个简单的介绍。
訾博ZiBo
2025/01/06
520
TypeScript手记(四)
对于传统的 JavaScript 程序我们会使用函数和基于原型的继承来创建可重用的组件,但对于熟悉使用面向对象方式的程序员使用这些语法就有些棘手,因为他们用的是基于类的继承并且对象是由类构建出来的。从 ECMAScript 2015,也就是 ES6 开始, JavaScript 程序员将能够使用基于类的面向对象的方式。使用 TypeScript,我们允许开发者现在就使用这些特性,并且编译后的 JavaScript 可以在所有主流浏览器和平台上运行,而不需要等到下个 JavaScript 版本。
用户7572539
2020/08/26
5140
TypeScript中的类
在TypeScript中,类是一种用于创建对象的蓝图,它定义了对象的属性和方法。类可以看作是对象的模板,通过实例化类可以创建具体的对象。
堕落飞鸟
2023/05/22
7810
TypeScript 官方手册翻译计划【十二】:类
TypeScript 为 ES2015 引入的 class 关键字提供了全面的支持。
Chor
2021/12/12
2.6K0
TypeScript 官方手册翻译计划【十二】:类
【愚公系列】2021年12月 Typescript-类的使用(封装,继承,多态)
ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。
愚公搬代码
2022/12/01
5570
TypeScript学习笔记(四)—— TypeScript提高
Type又叫类型别名(type alias),作用是给一个类型起一个新名字,不仅支持interface定义的对象结构,还支持基本类型、联合类型、交叉类型、元组等任何你需要手写的类型。
张果
2022/10/04
2.5K0
TypeScript学习笔记(四)—— TypeScript提高
类_TypeScript笔记4
TypeScript里的类的定义与ES6 Class规范一致,静态属性,实例属性,访问器等都支持:
ayqy贾杰
2019/06/12
7370
TypeScript 之 Class(下)
静态成员同样可以使用 public protected 和 private 这些可见性修饰符:
玖柒的小窝
2021/12/09
9400
一起重学TypeScript
class 类名<T> { name!: T; hobby!: T; } # 这样这个类的所有类型为 number let 实例 = new 类名<number>();
程序员海军
2021/10/10
2K0
一起重学TypeScript
typescript 多继承_说明类的继承和多态有什么作用
对于传统的 JavaScript 程序我们会使用函数和基于原型的继承来创建可重用的组件,但对于熟悉使用面向对象方式的程序员使用这些语法就有些棘手,因为他们用的是基于类的继承并且对象是由类构建出来的。 从 ECMAScript 2015,也就是 ES6 开始, JavaScript 程序员将能够使用基于类的面向对象的方式。 使用 TypeScript,我们允许开发者现在就使用这些特性,并且编译后的 JavaScript 可以在所有主流浏览器和平台上运行,而不需要等到下个 JavaScript 版本。
全栈程序员站长
2022/09/16
1.2K0
typescript 多继承_说明类的继承和多态有什么作用
TypeScript基础(四)扩展类型 - 类
TypeScript是一种静态类型的编程语言,它是JavaScript的超集,可以编译成纯JavaScript代码。TypeScript引入了类的概念,使得开发者可以使用面向对象的方式来编写代码。本文将介绍TypeScript的类、继承、访问修饰符和访问器的用法。
can4hou6joeng4
2023/11/17
3670
前端应该掌握的Typescript基础知识
js 是一门动态弱类型语言, 我门可以随意的给变量赋不同类型的值 ts 是拥有类型检查系统的 javascript 超集, 提供了对 es6 的支持, 可以编译成纯 javascript,运行在任何浏览器上。 TypeScript 编译工具可以运行在任何服务器和任何系统上。TypeScript 是开源的。
前端老鸟
2022/03/07
6230
typescript 和class 类
TypeScript 是一种给 JavaScript 添加特性的语言扩展。增加的功能包括:
conanma
2021/12/07
1.3K0
TypeScript 面向对象程序设计(OOP)
在 JavaScript 中 ES6 之前我们使用函数(构造器函数)和基于原型来创建一个自定义的类,但这种方式总会让人产生困惑,特别是习惯了 Java、PHP 等面向对象编程的同学来说更加难以理解。
五月君
2020/05/19
8340
typescript中的class和interface
刚刚的vue3.0一发布,各大网址和社区以及公众号已经被Vue3.0的One Piece版本所霸屏,出现不同的标题有着同样内容的现象,借此热度我们不如好好回顾一下ts基础知识,备战vue3.0的正式使用。
小丑同学
2020/09/27
1.9K0
typescript中的class和interface
typescript基础一览,助你从入门到放弃!
ts作为一个超级js,这两年是越来越火,我辈中人如何能不馋他,故观其大概后,迫不及待分享给大家,自己加深印象同时,又帮助大家,岂不美哉!本文分为三个部分,基础语法,进阶语法,以及高级语法,主要是讲解常用语法使用,方便以后忘记之处及时查阅!
用户7413032
2020/06/11
8320
typescript基础一览,助你从入门到放弃!
TypeScript系列教程八《类》
TypeScript完全支持ES2015中引入的class关键字。 与其他JavaScript语言特性一样,TypeScript添加了类型注释和其他语法,允许您表达类和其他类型之间的关系。
星宇大前端
2021/07/23
6130
13-TypeScript单例模式
在JavaScript中,要实现设计模式比较复杂。而在TypeScript中因为使用面向对象的思想编程,要实现设计模式的方式与后端语言C#、Java等非常类似。 单例模式是一种常用的设计模式,通常用于我们只允许类的一个实例存在时,会使用单例模式。基本思路是把类的构造函数声明为私有的,这样调用方就不能通过实例化来 生成实例多个对象,另外类中有一个方法控制对象实例化,如果已经存在一个实例则直接返回,不存在则初始化一个新对象。 class User{ public name:string; pub
用户1910585
2018/05/04
9840
从C#到TypeScript - 类
本文介绍了从C#到TypeScript - 类的基础知识,包括类的定义、构造函数、属性、方法、继承、多态、泛型、接口和抽象类。TypeScript还支持接口和抽象类,提供了许多类和接口的示例。此外,TypeScript还支持泛型,可以与接口和抽象类一起使用。这些概念都是JavaScript编程语言中比较高级的概念,需要有一定的编程基础才能理解。
用户1147588
2018/01/04
1.1K0
相关推荐
09-TypeScript中的继承
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文