class 类

类是面向对象语言的程序设计中的概念,是面向对象编程的基础。

类是创建对象的模板,是对现实生活中一类具有共同特征的事物的抽象

类的内部封装了属性和方法,用于操作自身的成员

示例

将每条狗看做一个对象,那他的属性就有 品种、颜色,方法(行为)舔、叫、吃。

class Dog {
    breed: string;
    color: string;
    lick(): void {
        console.log(`
        我仍认为我们作为一个舔狗的真正目的是为了拥有一份真诚的爱情,
        而不是为了爱情做一个真诚的舔狗。
        虽为舔狗,却有战狼之志,
        舔一人为小爱,舔百人为大爱,
        所谓大爱无疆。所以舔并不可耻!`);
    }
    eat(): void {
        console.log(`舔狗不配吃饭!!!`);
    }
    bark(): void {
        console.log(`宝 我今天去输液了 输的什么液 想你的夜`);
    }
}
// 创建实例
const dog = new Dog();
dog.breed='舔'
dog.color='金';
// 调用实例的方法
dog.lick()

构造函数

用关键字 constructor 定义,很遗憾不允许存在多个构造函数实现

class Dog {
    breed: string;
    color: string;
    //   constructor(){
    //   };
    // constructor(breed: string) {
    //     this.breed = breed;
    // }
    constructor(breed: string, color: string) {
        this.breed = breed;
        this.color = color;
    }
}
// 创建实例
const dog = new Dog('', '');

继承

子类Dog通过 extends 关键字 继承父类Animal,创建的dog的实例,便能够调用 run()方法。

class Animal {
    run(distance: number) {
        console.log(`跑了 ${distance}m`)
    }
}
class Dog extends Animal {
    breed: string;
    color: string;
    lick(): void {
        console.log(`我仍认为我们作为一个舔狗的真正目的是为了拥有一份真诚的爱情,而不是为了爱情做一个真诚的舔狗,虽为舔狗,却有战狼之志,舔一人为小爱,舔百人为大爱,所谓大爱无疆。所以舔并不可耻!`);
    }
    eat(): void {
        console.log(`舔狗不配吃饭!!!`);
    }
    bark(): void {
        console.log(`宝 我今天去输液了 输的什么液 想你的夜`);
    }
}
// 创建实例
const dog = new Dog();
dog.breed = '舔'
dog.color = '金';
// 调用实例的方法
dog.run(100);

以上就是TypeScript基础class类教程示例的详细内容,更多关于TypeScript class 类的资料请关注Devmax其它相关文章!

TypeScript基础class类教程示例的更多相关文章

  1. iOS – 开始iOS教程 – 变量之前的下划线?

    这是正确的还是我做错了什么?

  2. Swift开发快速上手系列教程目录-陆续完善,由浅入深

    Swift开发教程一.Swift基础Swift教程01-使用switfc终端命令编译运行swift程序Swift教程02-抓住下一个浪潮之巅Swift教程03-playground剖析swift语言Swift教程04-定义声明变量重要原则Swift教程05-基本数据类型(一)整型浮点型Swift教程06-基本数据类型(二)Bool布尔类型对比Java-boolean,Objc-BOOLSwift教

  3. Swift2.0不深入只浅出入门教程-01-The Basic

    本套视频教程是Swift2.0的入门教程,如果你看过其他的教程,可以不看这套教程,录制这套教程的目的,一个是为了自学,一个是为之后自己的另一套教程打基础。本期教程主要介绍Swift语言的一些基础知识。由于CSDN学院的课程审核还没有通过,所以暂时就放到了百度网盘。

  4. Swift教程-视频拍摄教程

    在此教程中,我们将拍摄一段保存到手机相册的视频。教程运行在iOS8.4和Xcode6.4下。打开Xcode并创建一个newSingleViewApplication,项目名称为IOS8SwiftTakeVideoPlayerTutorial,接着填上你的OrganizationName和OrganizationIdentifier,选择Swift语言,在设备一栏只选择iPhone。ImagePickerController的数据可以是Camera或Movie两种类型。视频的maximum长度设置为10秒。

  5. Swift使用CoreData报错:CoreData: warning: Unable to load class named 'xxx' for entity 'xxx'.

  6. Swift语言中class、struct、enum的联系与区别

    相同点三者都可以拥有属性和方法都可以拥有函数class和struct可以拥有自己的构造器不同点类可以继承类可以内省和转型struct、enum为值类型,class为引用类型类方法用class关键词声明,enum、struct用static关键词用mutaing关键词声明要修改struct、enum内容的方法结构体适合基本数据类型

  7. 详解 SiriKit - SiriKit 教程Part 2

    此文章是SiriKit教程系列的第二篇,建议先去阅读第一篇。处理SiriKit请求为了让集成的Siri更有用,可以使用INSendMessageIntentHandling协议的回调方法增加信息内容。协议有以下可选方法:只要实现这些方法,就可以给SiriKit提供更多信息,例如接收者、内容、小组名字、服务名字或者发送者。后面会详细说明区别,现在先介绍如何使用Siri提供的数据。Siri传入的intent对象包含文字版的消息内容。现在当我们尝试发送消息时,SiriKit就明白必须要提供内容值。

  8. swift 学习资源 - Swift 语言指南

    对于精选项目及文章,可直接访问《Swift项目精选》和《Swift文章精选》。对于Swift开源及跨平台开发的同学,可以关注swift.org教程文章开源项目推荐网站苹果官方Swift:Swift概述、博客以及开发资源。swift.org:开源后独立出来的Swift开源社区。ksm/SwiftInFlux:作者将AppleDeveloperForums上有关Swift特性、缺陷及变更讨论分类汇总并更新到GitHub,具有很好的可读性。从中可以一窥Swift缺陷及未来潜在地变化。近期第一时间出了三本Swif

  9. [译] NSCollectionView 入门教程

    Mac中自带的Finder和Photos就是使用了它:通过一个CollectionView来展示所有的文件和图片。NSCollectionView最早在OSX10.5被推出,它可以非常方便地布局一组具有相同大小的item,并把它们展示在一个可以滑动的ScrollView中。在OSX10.11ElCapitan中,参照iOS上的UICollectionView,NSCollectionView被全面进行了升级。在这个NSCollectionView的入门教程中,你将会创造一个叫SlideMagic的app,

  10. 如何在swift中覆盖layerClass

    在Objective-C中,我们使用这样做显然这不会工作:因为类是Swift中的关键字。你如何在Swift中做它?改编自Apple的ListerKit示例代码:

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部