ArkTS之Class类

1概述

        ArkTS是HarmonyOS的程序设计语言,提供了充分的面向对象编程支持。在ArkTS中,Class是构造处理复杂对象和高度繁档程序的基础构件。本文将从基础解释到高级实现,进一步探索ArkTS中Class的功能和应用场景。

2基础概念

        在ArkTS中,一个类是对应一类业务相关模型的对象的纲要描述。类通过使用关键字class定义,它可以存储属性和方法,用于实现对象的具体行为和状态。

2.1基础进行类的定义

        一个简单的ArkTS类可以使用如下代码定义:

class Person {
    name: string;
    age: number;

    constructor(name: string, age: number) {
        this.name = name;
        this.age = age;
    }

    greet(): void {
        console.log(`Hello, my name is ${this.name} and I am ${this.age} years old.`);
    }
}

        上述代码根据下列元素构造了一个类:

        属性:name和age,它们将被一个实例用来举例化。

        构造器:constructor让我们能在创建新实例时设置初始化值。

        方法:greet 是该类的行为,属于实例的属性和模型。

2.2实例化对象

        实例化类是通过使用其构造器來实现的,比如:

const person = new Person('Alice', 25);

        这将创建一个Person实例,并调用其中的greet方法完成特定功能。

3继承和多态

        ArkTS支持类的继承,让我们能够采用基类来扩展新类:

class Animal {
    name: string;

    constructor(name: string) {
        this.name = name;
    }

    move(): void {
        console.log(`${this.name} is moving.`);
    }
}

class Dog extends Animal {
    constructor(name: string) {
        super(name);
    }

    bark(): void {
        console.log(`${this.name} says: Woof!`);
    }
}

const dog = new Dog('Buddy');
dog.move(); // Buddy is moving.
dog.bark(); // Buddy says: Woof!

        继承:新类Dog通过extends扩展自基类 Animal 。

        采用super关键字:用于调用基类的方法和构造器。

        多态:实体上,新类可以重写基类的方法,完成更精简的应用。

4中级和高级功能

4.1静态属性和方法

        在ArkTS中,类可以声明静态属性和方法,并不需要创建实例就能直接调用。

class MathUtils {
  static PI: number = 3.14159;

  static calculateCircumference(radius: number): number {
    return 2 * MathUtils.PI * radius;
  }
}

console.log('MathUtils.PI:',MathUtils.PI); // MathUtils.PI: 3.14159
console.log('MathUtils.calculateCircumference(10):',MathUtils.calculateCircumference(10)); // MathUtils.calculateCircumference(10): 62.8318

        静态属性和方法:通过static关键字声明。

        全级通用:无需创建实例。

4.2接口和类的跨互

        接口提供了程序的规范,让类可以完成规范的实现:

interface Flyable {
    fly(): void;
}

class Bird implements Flyable {
    fly(): void {
        console.log('Flying high!');
    }
}

const bird = new Bird();
bird.fly(); // Flying high!

        接口:通过关键字interface声明。

        实现:用implements规范类体现。

5总结

        ArkTS中的Class是构建高性能和可维护程序的重要业务构件。通过构造器、继承和静态方法等过程,它能够充分完成复杂的工程需求,是HarmonyOS开发中不可战略的一环。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值