当前位置: 首页 > news >正文

(一)javascript中class类

在 JavaScript 中使用 class 语法可以定义类的结构,其中可以包括静态属性/方法、私有属性/方法、公共属性/方法和受保护属性/方法。这些概念有助于封装和数据隐藏,使得代码更加模块化和安全。下面我会解释这些不同的属性和方法,以及如何在类中使用它们。

1. 静态属性和方法

静态属性和方法属于类本身而不是类的实例。这意味着你无需创建类的实例就可以访问它们。它们通常用于实现不依赖于实例状态的功能。

class MyClass {static staticProperty = "class level property"; // 静态属性static staticMethod() { // 静态方法return 'I am a static method';}
}console.log(MyClass.staticProperty); // 访问静态属性
console.log(MyClass.staticMethod()); // 调用静态方法

2. 私有属性和方法

私有属性和方法只能在类的内部访问,它们不能从类的实例或者子类中访问。在 JavaScript 中,你可以通过 # 前缀来标记私有字段和方法。

class Example {#privateProperty = "I am private"; // 私有属性#privateMethod() { // 私有方法return 'This is a private method';}getPrivateMethod() {return this.#privateMethod(); // 内部访问私有方法}
}const obj = new Example();
console.log(obj.getPrivateMethod()); // 正确访问
// console.log(obj.#privateMethod()); // 错误,外部不能访问私有方法
// console.log(obj.#privateProperty); // 错误,外部不能访问私有属性

3. 公共属性和方法

公共属性和方法是默认的访问级别,可以从类的内部、实例以及继承的子类中访问。

class PublicExample {publicProperty = "I am public"; // 公共属性publicMethod() { // 公共方法return 'This is a public method';}
}const example = new PublicExample();
console.log(example.publicProperty); // 访问公共属性
console.log(example.publicMethod()); // 调用公共方法

4. 受保护属性和方法

JavaScript 原生不直接支持受保护(protected)属性和方法,这些通常是只能在类及其子类中访问。不过,你可以通过约定(如使用下划线 _ 前缀)来模拟这种行为。

class ProtectedExample {_protectedProperty = "I am protected"; // 受保护属性,约定_protectedMethod() { // 受保护方法,约定return 'This is a protected method';}
}class ChildExample extends ProtectedExample {useProtectedMethod() {return this._protectedMethod(); // 子类访问受保护方法}
}const child = new ChildExample();
console.log(child.useProtectedMethod()); // 正确访问
// console.log(child._protectedMethod()); // 可能访问,但不建议(违反约定)

5. 继承

继承允许一个类继承另一个类的方法和属性,是代码重用的一个重要手段。

class Parent {parentMethod() {return 'Method from Parent';}
}class Child extends Parent {childMethod() {return 'Method from Child';}
}const childInstance = new Child();
console.log(childInstance.parentMethod()); // 子类实例访问继承的方法
console.log(childInstance.childMethod()); // 子类实例访问自己的方法

通过上述示例,你可以看到如何在 JavaScript 中使用类的不同属性和方法,以及它们之间的区别。这些技术可以帮助你构建更健壮、易于维护的JavaScript应用程序。

http://www.lryc.cn/news/411797.html

相关文章:

  • 【注意力MHA,MQA,GQA,MLA】
  • 《从零开始做个摸鱼小网站! · 序》灵感来源
  • 计算机基础(Windows 10+Office 2016)教程 —— 第5章 文档编辑软件Word 2016(上)
  • 短视频矩阵管理系统源码:实现短视频内容全面布局
  • 系统设计中15 个最重要的权衡
  • 12年外贸实战经验,一定对你有帮助!
  • Linux---进程(3)---进程状态
  • Drools规则引擎实现停车计费
  • 【python虚拟环境】安装第三方包失败/failed with error code1
  • DiffusionModel-latent diffusion,VAE,U-Net,Text-encoder
  • C# form的移植工作
  • linux防火墙相关命令
  • 实习中学到的一点计算机知识(MP4在企业微信打不开?)
  • ElasticSearch入门语法基础知识
  • 【C++】C++应用案例-dolphin海豚记账本
  • Matlab数据处理学习笔记
  • 浏览器中的同源策略、CORS 以及相关的 Fetch API 使用
  • 爬虫 APP 逆向 ---> 粉笔考研
  • 2024河南萌新联赛第(三)场 河南大学
  • 回溯法---分割回文串
  • DDR等长,到底长度差多少叫等长?
  • 程序员面试题------N皇后问题算法实现
  • 【C++学习】6、继承
  • 从零开始的MicroPython(三) 按键与外部中断
  • Windows下编译安装Kratos
  • 汽车-腾讯2023笔试(codefun2000)
  • 软测面试二十问(最新面试)
  • 风吸杀虫灯采用新型技术 无公害诱虫捕虫
  • 随手记录第十二话 -- JDK8-21版本的新增特性记录(Lambda,var,switch,instanceof,record,virtual虚拟线程等)
  • SpringCloud网关 SpringBoot服务 HTTP/HTTPS路由/监听双支持