1.Typescript中static详解

静态成员:在类中通过 static 修饰的属性或者方法
那么就是静态的属性静态方法
也称之为:静态成员(静态成员包含静态属性和静态方法)
静态成员在使用的时候通过【类名.静态属性】来访问

2.访问和修改static静态成员的小栗子

class Person{
// 类中默认有一个内置name属性
// 静态属性myname
static myname:string='小可爱'
sayHi() {
console.log('sayHi')
}
}
const per = new Person();
// 访问类中的静态属性
console.log(Person.myname);
// 修改类中的静态属性
Person.myname = '大可爱'
console.log(Person.myname);
//输出[大可爱]

3.抽象方法

抽象类中包含抽象方法:(抽象方法一般【没有任何具体内容】的实现)
抽象类中也可以包含实例方法
抽象类是不能够被实例化
抽象类可以让子类进行实例化以及实现内部所有的抽象方法
抽象类中也可以有抽象属性
{但是在实际开发过程中抽象类中一班不会有抽象属性}
我们知道了抽象类中可以包含:抽象属性 抽象方法 实例方法
ps:子类继承了抽象类,子类就必须实现抽象类中的抽象方法

4.写抽象类的注意点

abstract class Animals{
// 这样写法是错误的,
// 因为抽象方法一般没有任何具体内容的实现
// abstract eat (){
// console.log('跑着吃,跳着吃')
// }
abstract eat()
}
// 这样的写法是错误的。
// 因为:抽象类不能够被实例化
// let dog=new Animals()

5.抽象类

abstract class Animals{
// 这样写法是错误的,
// 因为抽象方法一般没有任何具体内容的实现
// abstract eat (){
// console.log('跑着吃,跳着吃')
// }
abstract eat()
abstract sleep();
// 抽象类中的抽象属性
abstract myname: string
// 抽象方法也可以包含实例方法
say() {
console.log('你好啊')
}
}
// 子类继承了抽象类,子类就必须实现抽象类中的抽象方法
class Dog extends Animals {
// 重新实现抽象类中的抽象方法
eat() {
console.log('我是狗,趴着吃')
}
// 重新实现抽象类中的抽象方法
sleep() {
console.log('我是狗,趴着睡')
}
// 实现抽象属性
myname: string="狗子"
}
// 实例化
let xiaohei = new Dog(); // 直接调用方法
xiaohei.eat();//我是狗,趴着吃 // 调用的是抽象类中的实例方法
xiaohei.say();//你好啊 // 修改类中的属性
xiaohei.myname = '小黄狗'
console.log(xiaohei)
// 输出 Dog { myname: '小黄狗' }

让你彻底理解Typescript中静态成员和抽象方法的更多相关文章

  1. 十分钟教你理解TypeScript中的泛型

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://blog.bitsrc.io/understanding-generics-in-t ...

  2. typescript 中的 infer 关键字的理解

    infer 这个关键字,整理记录一下,避免后面忘记了.有点难以理解呢. infer infer 是在 typescript 2.8中新增的关键字. infer 可以在 extends 条件类型的字句中 ...

  3. TypeScript 中命名空间与模块的理解?区别?

    一.模块 TypeScript 与ECMAScript 2015 一样,任何包含顶级 import 或者 export 的文件都被当成一个模块 相反地,如果一个文件不带有顶级的import或者expo ...

  4. 【TypeScript】如何在TypeScript中使用async/await,让你的代码更像C#。

    [TypeScript]如何在TypeScript中使用async/await,让你的代码更像C#. async/await 提到这个东西,大家应该都很熟悉.最出名的可能就是C#中的,但也有其它语言也 ...

  5. JavaScript 和 TypeScript 中的 class

    对于一个前端开发者来说,很少用到 class ,因为在 JavaScript 中更多的是 函数式 编程,抬手就是一个 function,几乎不见 class 或 new 的踪影.所以 设计模式 也是大 ...

  6. TypeScript 中的方法重载

    方法重载(overload)在传统的静态类型语言中是很常见的.JavaScript 作为动态语言, 是没有重载这一说的.一是它的参数没有类型的区分,二是对参数个数也没有检查.虽然语言层面无法自动进行重 ...

  7. 深入理解Java中的IO

    深入理解Java中的IO 引言:     对程序语言的设计者来说,创建一个好的输入/输出(I/O)系统是一项艰难的任务 < Thinking in Java >   本文的目录视图如下: ...

  8. TypeScript中使用getElementXXX()

    如果只是看解决方法,可以直接跳到第二小节 简述 Angular 1.x版本是用JavaScript编写的,我们在百度Angular经常会搜索到AngularJS,并不是JavaScript的什么衍生版 ...

  9. typeScript中的数据类型

    /* typeScript中的数据类型 typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,在typescript中主要给我们提供了以下数据类型 布尔类型(boolean) 数 ...

  10. TypeScript中的private、protected

    首先我们要清楚 private . protected 现阶段只是javascript中的保留字(Reserved words),而非关键字(Keywords ).因此TypeScript中的纯类型声 ...

随机推荐

  1. 收到一封CTO来信,邀约面试机器学习工程师

    大家好,我是北海 很少登陆 Gmail,前天收验证码登了一下,发现居然收到一封某初创公司CTO的来信. 我在Github上看到了您的资料觉得很有意思,请问您是否考虑我们公司的全职工作机会呢?可供考虑的 ...

  2. 【原理篇】WebView 实现嵌套滑动,丝滑般实现吸顶效果,完美兼容 X5 webview

    本文首发我的微信公众号徐公,收录于 Github·AndroidGuide,这里有 Android 进阶成长知识体系, 希望我们能够一起学习进步,关注公众号徐公,5 年中大厂程序员,一起建立核心竞争力 ...

  3. 关于_beginthreadex和CreateThread的区别

    关于_beginthreadex和CreateThread的区别 在 Win32 API 中,创建线程的基本函数是 CreateThread,而 _beginthread(ex) 是 C++ 运行库的 ...

  4. PS 创建网络去掉反冲增强

    一.当物料为反冲物料时,创建网络数据,希望去掉反冲标识 二.增强实施 在BAPI中传入反冲标识为空 在标准代码中发现反冲标识的赋值位置 判断当不传入反冲标识,将物料自带的反冲标识清空 定期更文,欢迎关 ...

  5. 【HZERO】feign调用

    feign调用 https://open.hand-china.com/community/detail/603204901962649600 # Hiam获取用户信息示例

  6. 开源项目因支持乌克兰遭issue刷屏,网友:别用Nginx,别用元素周期表

    大家好,我是DD. 昨天,两条科技界的新闻炸了,一条是关于GitHub发文封锁俄罗斯,一条是关于Oracle暂停俄罗斯所有业务.一个是全球最大的开源软件社区,一个是全球最大的数据库软件厂商.似乎巨头的 ...

  7. #2612:Find a way(BFS搜索+多终点)

    第一次解决双向BFS问题,拆分两个出发点分BFS搜索 #include<cstdio> #include<cstring> #include<queue> usin ...

  8. vivo 商城架构升级-SSR 实战篇

    一.前言 在前面几篇文章中,相信大家对vivo官网商城的前端架构演变有了一定的了解,从稳步推进前后端分离到小程序多端探索实践,团队不断创新尝试. 在本文中,我们来分享一下vivo官网商城在Node 服 ...

  9. mysql 查看数据库及表大小以及数据库扩容评估

    本文为博主原创,未经允许不得转载: 1.查看数据库数据存储的位置: show global variables like "%datadir%"; 2.查看数据库大小 2.1 in ...

  10. git仓库之gogs安装(docker版/二进制版)

    二进制安装gogs tar zxf gogs_0.11.91_linux_amd64.tar.gz -C /data/gogs chown -R www.www /data/gogs su - www ...