Typescript---03 类、接口、枚举
传统的javascript程序使用函数和基于原型的继承来创建可重用的组件,从ECMAScript2015(ECMAScript 6)开始,可以使用基于类的面向对象方式。
一、类:
定义类(class)
class Person{
name: string;
constructor(name:string){
this.name = name;
}
}
let stu = new Person("张三");
继承类(extends)
class Student extends Person{
readBook(){
console.log( this.name + "is reading");
}
}
访问修饰符
默认为public
private 私有,只有内部可以访问
protected,内部和派生类可以访问
readonly 只读,必须在声明时或构造函数里被初始化
static 静态属性,可以直接通过类名访问
存取器get/set,如果只有get不带有set的存取器被推断为readonly
抽象类
abstract 定义抽象类以及定义抽象类的抽象方法。 不同于接口,抽象类里可以包含成员的实现。抽象类不会直接被示例化
二、接口
定义接口
interface MainService {
context: string
}
可选属性,可选属性就是在属性名后加? 符号
interface MainService {
context: string;
name?:string;//可选属性
}
只读属性,只在对象刚创建的时候修改值
interface MainService {
context: string;
name?:string;//可选属性
readonly gender: string;// 只读属性
}
实现接口
class Main implements MainService{
current: Date;
}
三、类与接口
1)类可以实现接口
2)接口继承接口
3)接口继承类
四、枚举
数字枚举
enum Direction {
Up = 1,
Down,
Left,
Right
}
字符串枚举
enum Direction {
Up = "UP",
Down = "DOWN",
Left = "LEFT",
Right = "RIGHT",
}
Typescript---03 类、接口、枚举的更多相关文章
- day133:2RenMJ:TypeScript的变量&函数&类&接口
目录 1.变量 2.函数 3.类 4.接口 1.变量 1.变量的声明 // 1.即指定数据类型 也指定值 var 变量名:类型 = 值; eg:var username:string = " ...
- typescript中的接口
说到接口:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部状态数据,也不关心 ...
- 【TypeScript】TypeScript 学习 2——接口
在 TypeScript 中,接口是用作约束作用的,在编译成 JavaScript 的时候,所有的接口都会被擦除掉,因为 JavaScript 中并没有接口这一概念. 先看看一个简单的例子: func ...
- TypeScript完全解读(26课时)_4.TypeScript完全解读-接口
4.TypeScript完全解读-接口 初始化tslint tslint --init:初始化完成后会生成tslint.json的文件 如果我们涉及到一些规则都会在这个rules里面进行配置 安装ts ...
- Java类/接口的API
本章节收集的类/接口API有: Object类,枚举,包装类,接口Comparable,类Arrays,异常, Object类 public String toString(): [把一个对象的信息用 ...
- Typescript基础(4)——接口
前言 今天继续typescript的学习,开始ts接口部分的学习. 接口 接口的理解 首先,我们谈论一下现实生活中的接口.比如生活中常用的插座接口,有些插头是三孔插座的,有些是两孔插座的.插座接口规定 ...
- typescript属性类型接口
/* typeScript中的接口 - 1.属性类接口 */ /* 接口的作用:在面向对象的编程中,接口是一种规范的定义,它定义了行为和动作的规范,在程序设计里面,接口起到一种限制和规范的作用.接口定 ...
- 探索typescript的必经之路-----接口(interface)
TypeScript定义接口 熟悉编程语言的同学都知道,接口(interface)的重要性不言而喻. 很多内容都会运用到接口.typescrip中的接口类似于java,同时还增加了更灵活的接口类型,包 ...
- TypeScript 高级类型 接口(interface)
在代码的实现或者调用上能设定一定的限制和规范,就像契约一样.通常,我们把这种契约称为接口. TypeScript的核心原则之一是对值所具有的结构进行类型检查. 有时称为“鸭式辨型法”或“结构性子类型化 ...
- TypeScript入门四:TypeScript的类(class)
TypeScript类的基本使用(修饰符) TypeScript类的抽象类(abstract) TypeScript类的高级技巧 一.TypeScript类的基本使用(修饰符) TypeScript的 ...
随机推荐
- CentOS_7下安装MySQL
卸载旧版本MySQl: 下载MySQ: MySQl官网:https://dev.mysql.com/downloads/mysql/ 版本自选,操作系统选Linux-Generic,64位系统或者32 ...
- Springboot文件上传与下载
一.创建简单的springboot-web项目 二.文件上传属性配置 #默认支持文件上传 spring.http.multipart.enabled =true spring.http.multipa ...
- Phython中读写和存储.mat文件
背景 在做deeplearning过程中,使用caffe的框架,一般使用matlab来处理图片(matlab处理图片相对简单,高效),用python来生成需要的lmdb文件以及做test产生结果.所以 ...
- LCA Binary Lifting 倍增
留坑 待填 一篇不错的CF博客 这篇纯讲理论的,比较清楚. 去CF上搜Gym algorithm 可以看到很多算法文章.
- Markdown——入门指南
导语: Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用.看到这里请不要被「标记」.「语言」所迷惑,Markdown 的语法十分简单.常用的标记 ...
- atool-build 打包项目报JavaScript heap out of memory 错误
出现这个问题的原因,是因为NodeJS给JavaScript设置了默认内存使用限制(32位系统下0.7GB,64位系统下1.4GB),就算我们的电脑内存是64GB的,在使用atool-build打包时 ...
- 帕斯卡(pascal)命名法:
帕斯卡(pascal)命名法: 与骆驼命名法类似.只不过骆驼命名法是首字母小写,而帕斯卡命名法是首字母大写 如:public void DisplayInfo(); string UserName; ...
- 前端面试题整理—React篇
1.说一下React React是Facebook 开发的前端JavaScript库 V层:react并不是完整的MVC框架,而是MVC中的C层 虚拟DOM:react引入虚拟DOM,每当数据变化通过 ...
- 基于jeesite的cms系统(七):GlobalException全局异常和部署
关于全局异常: 在业务代码中专注处理业务,而不是返回各种CodeMsg(比如这里只需要知道登录时成功还是失败,其余情况直接抛出异常),可以直接抛出异常,添加一个全局异常类,根据CodeMsg来生成异常 ...
- 2、jQuery的Ajax简单示例
一.创建一个JavaWEBProject 二.创建一个Servlet(下面的例子中用到了Json--第32行,Json的作用是将一个Object类转换为特定格式的字符串,如果不用Json直接返回字符串 ...