TypeScript -类 -类的基本定义

news/2024/11/17 23:29:12/

类的基本概念

类 就是对象的抽象,是对象的模板。
对象 就是类的一个具体实现。比如 【学生】是一个类,每个学生都有姓名、年龄两个属性,每个学生都有一个方法 sayHi()。【小明】是一个【学生】,也就是【学生】类的一个对象,自然就有 姓名、年龄两个属性和 sayHi() 方法。

写一个类来看看

定义类的关键字是 class。
类的定义中,主要会包含 属性 和 方法 以及 构造方法,
【属性】中有普通的属性,只读属性(用readonly 来修饰)
【方法】就是定义函数,没有什么特殊的地方
【构造方法】就是初始化对象属性的方法,特别注意的是,只读属性只能在构造方法中初始化,其他的位置不可以操作构造方法也是个方法,参数也可以是默认参数、可选参数,当然也可以重载
下面定义一个类来看看
class Student{// 定义属性name:stringage:number// 只读属性:只能构造器进行设置值,其他位置不可以操作readonly cid:string// 通过构造器初始化属性// 构造器是可选的constructor(name:string,age:number,cid:string){this.name = namethis.age = agethis.cid = cid}// 定义方法sayHi(name:string):void{console.log(this.name + 'say Hi to : '+name)}
}// 创建类的对象
let xiaoming = new Student('小明',12,'0001');
// 打印一下这个对象
console.log(xiaoming)
xiaoming.sayHi('小红')
// xiaoming.cid = '0002' // 只读属性,不可以修改值
运行结果:Student { name: '小明', age: 12, cid: '0001' }
小明say Hi to : 小红

http://www.ppmy.cn/news/1188883.html

相关文章

【C++ 系列文章 -- 程序员考试 下午场 C++ 专题 201711 】

文章目录 1.1 C 题目六1.1.1 填空(1)详解1.1.2 填空(2)详解1.1.2.1 C this 的使用 1.1.3 填空(3)详解1.1.4 填空(4)详解1.1.5 填空(5)详解1.1.6 填空&#xf…

精密数据工匠:探索 Netty ChannelHandler 的奥秘

通过上篇文章(Netty入门 — Channel,把握 Netty 通信的命门),我们知道 Channel 是传输数据的通道,但是有了数据,也有数据通道,没有数据加工也是没有意义的,所以今天学习 Netty 的第四…

《微聊》JMeter性能测试报告

文章目录 准备工作JMeter准备工作本地配置代理 测试规划测试方向预期方向异常处理 压力测试录制注册功能压力注册功能压力脚本录制录制功能压力测试脚本完善注册功能压力测试结果 登录功能压力录制登录功能压力测试脚本构造压力测试数据完善登录功能性能测试脚本登录功能压力测…

apt-get-update报错

apt-get-update报错 错误一 E: Malformed entry 1 in list file /etc/apt/sources.list.d/pgdg.list (Component) E: The list of sources could not be read.查看原因: sudoedit /etc/apt/sources.list.d/pgdg.list可以看到显示的链接deb http://apt.postgresql…

【开题报告】基于SpringBoot的研究生管理系统的设计与开发

1.研究背景 研究生教育是高等教育体系中的重要组成部分,对于培养高层次、高水平的专业人才和推动科学研究具有重要意义。研究生管理是保证研究生培养质量和提升研究生培养工作效率的关键环节。然而,传统的研究生管理方式存在一些问题,如信息…

CondaError_ Downloaded bytes did not match Content-Length

问题 使用anaconda下载包文件时,出现了CondaError: Downloaded bytes did not match Content-Length的错误 CondaError: Downloaded bytes did not match Content-Lengthurl: https://conda.anaconda.org/pytorch/win-64/pytorch-2.1.0-py3.11_cuda11.8_cudnn8_0.…

J2EE项目部署与发布(Linux版本)

目录 一.jdk&tomcat安装 1.jdk的安装 1.2解压对应的安装包 1.3配置环境变量 2.tomcat的安装 二.mysql的安装 三.后端接口部署 后端部署 导入war包 修改端口 开启访问 一.jdk&tomcat安装 1.jdk的安装 登录VMware Workstation Pro 然后连接MobaXterm 将 jd…

tomcat安装及配置教程

tomcat安装及配置教程 Tomcat的安装及配置步骤如下: 一、下载Tomcat 下载地址(Tomcat官网):Apache Tomcat - Welcome!。自行选择版本下载,并将文件安装或者解压到D或E盘且目录中不要有中文。 二、检查JDK是否安装 …