news 2026/5/1 8:45:55

TypeScript开发基础(10)——面向对象之类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
TypeScript开发基础(10)——面向对象之类

类是对象的抽象,是用于创建对象的模板。 面向对象开发时,通常在项目的问题域中分析现实中的实体,将同类实体的特征、属性、功能、行为等抽象出来,形成类结构。

类主要由属性、构造方法、访问器和一般方法组成。

属性——常被称为字段(Field)或成员变量(Member Variable)。

(1) 属性定义需要初始化 (2)静态属性

构造方法——用于创建对象的特殊函数, 用constructor命名,用new加类名来调用构造 方法创建对象。

访问器——获取和设置属性值的特殊方法, 用关键字get定义访问器,用关键字set定义存储器。

方法—— 是复用代码的最基本单位。

1. 类的定义

class 类名 {

修饰符 属性名 : 类型

constructor(参数名 : 类型, ...) {

构造体

}

修饰符 函数名(参数名 : 类型, ...) {

函数体

}

get 访问器名(): 类型{

… return …

}

set 存储器名() {参数名 : 类型, …} {

… this.属性=参数 …

}

}
2. 类的应用举例

//定义一个 Person 类,它有 name 和 age 两个属性,以及一个 greet 方法。 class Person { // 属性声明,可以用修饰符修饰,比如 public, private,protected。 private name: string; private age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } //访问器 get Name() { return this.name; } set Name(value: string) { this.name = value; } get Age() { return this.age; } set Age(value: number) { this.age = value; } greet() { console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`); } } let person1=new Person('John', 30); person1.greet(); // 输出: Hello, my name is John and I'm 30 years old. person1.Name='Tom'; person1.Age=25; person1.greet(); // 输出: Hello, my name is Tom and I'm 25 years old.
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 3:44:40

PS3游戏管理终极指南:完全掌握IRISMAN备份管理神器

想要让您的PlayStation 3发挥最大潜力吗?IRISMAN作为专业的PS3备份管理工具,为玩家提供了前所未有的游戏管理体验。无论您是游戏爱好者还是技术玩家,这款开源软件都能让您的PS3变身全能游戏中心。本文将带您深入了解IRISMAN的强大功能&#x…

作者头像 李华
网站建设 2026/5/1 4:48:00

3步精通:Zotero MarkDB-Connect高效配置手册

3步精通:Zotero MarkDB-Connect高效配置手册 【免费下载链接】zotero-markdb-connect Zotero plugin that links your Markdown database to Zotero. Jump directly from Zotero Items to connected Markdown files. Automatically tags Zotero Items so you can ea…

作者头像 李华
网站建设 2026/4/30 7:29:25

14、二阶动力学控制与状态空间模型解析

二阶动力学控制与状态空间模型解析 1. 二阶动力学控制器 在控制领域,加速度和位移反馈控制器存在显著差异。加速度反馈控制器没有连接到控制质量的虚拟接地,因此无法控制整个系统的位置。 1.1 频率匹配的虚拟被动控制器 虚拟被动控制器在稳定性方面表现出色,但这并不意味…

作者头像 李华
网站建设 2026/4/24 18:48:08

NGA论坛深度优化工具:让你的浏览体验从此与众不同

NGA论坛深度优化工具:让你的浏览体验从此与众不同 【免费下载链接】NGA-BBS-Script NGA论坛增强脚本,给你完全不一样的浏览体验 项目地址: https://gitcode.com/gh_mirrors/ng/NGA-BBS-Script 还在为NGA论坛繁杂的界面和低效的操作而烦恼吗&#…

作者头像 李华
网站建设 2026/5/1 4:48:19

22、动态反馈控制器与系统辨识相关知识解析

动态反馈控制器与系统辨识相关知识解析 1. 动态反馈控制器基础 动态反馈控制器类似于汽车中的减震器,有一种特殊的控制器概念叫虚拟被动控制器,它基于被动稳定化的思想,是动态输出反馈控制器的一种特殊类型,具有许多有趣且实用的特性。这里通过一个简单的弹簧 - 质量系统示…

作者头像 李华
网站建设 2026/5/1 1:41:24

如何快速创建个性化表盘:Mi-Create完整使用指南

如何快速创建个性化表盘:Mi-Create完整使用指南 【免费下载链接】Mi-Create Unofficial watchface creator for Xiaomi wearables ~2021 and above 项目地址: https://gitcode.com/gh_mirrors/mi/Mi-Create 你是否厌倦了智能手表上那些千篇一律的表盘设计&am…

作者头像 李华