发布网友 发布时间:2024-10-24 11:30
共1个回答
热心网友 时间:1分钟前
鸿蒙开发:ArkTS语言之:类class、类声明、字段、方法、构造函数、可见性修饰符、对象字面量
类声明引入一个新类型,并定义其字段、方法和构造函数。
定义类后,可以使用关键字new创建实例,或使用对象字面量创建实例。
字段是直接在类中声明的某种类型的变量。类可以具有实例字段或静态字段。
实例字段存在于类的每个实例上,每个实例都有自己的实例字段集合。要访问实例字段,需要使用类的实例。
静态字段使用关键字static将字段声明为静态,属于类本身,类的所有实例共享一个静态字段。要访问静态字段,需要使用类名。
所有字段在声明时或构造函数中显式初始化,这和标准TS中的strictPropertyInitialization模式一致。
setter和getter可用于提供对对象属性的受控访问。
方法属于类,可以定义实例方法或静态方法。实例方法可以访问实例字段,静态方法只能访问静态字段。
实例方法通过类的实例调用,静态方法通过类名调用。
一个类可以继承另一个类,使用以下语法实现多个接口。继承类继承基类的字段和方法,但不继承构造函数,可以新增定义字段和方法,覆盖基类定义的方法。
包含implements子句的类必须实现列出的接口中定义的所有方法,但使用默认实现定义的方法除外。
关键字super可用于访问父类的实例字段、实例方法和构造函数。子类可以重写其父类中定义的方法的实现,重写的方法可以用关键字override标记,以提高可读性。构造函数函数体的第一条语句可以使用关键字super调用直接父类的构造函数。
类的方法和属性都可以使用可见性修饰符,包括:private、protected和public,其中public为默认可见性。
public修饰的类成员在程序的任何可访问该类的地方都是可见的。private修饰的成员不能在声明该成员的类之外访问。protected修饰的成员允许在派生类中访问。
对象字面量是一个表达式,可用于创建类实例并提供一些初始值。它在某些情况下更方便,可以用来代替new表达式。对象字面量的表示方式是:封闭在花括号对({})中的'属性名:值'的列表。
泛型Record用于将类型(键类型)的属性映射到另一个类型(值类型)。常用对象字面量来初始化该类型的值。