ArkTS学习笔记:类的定义和对象的创建

文章目录

  • [1. 准备工作](#1. 准备工作)
  • [2. 类的定义](#2. 类的定义)
    • [2.1 语法格式](#2.1 语法格式)
    • [2.2 创建类](#2.2 创建类)
  • [3. 对象的创建](#3. 对象的创建)
    • [3.1 语法格式](#3.1 语法格式)
    • [3.2 创建对象](#3.2 创建对象)
  • [4. 运行程序,查看效果](#4. 运行程序,查看效果)
  • [5. 实战总结](#5. 实战总结)

1. 准备工作

  • 创建鸿蒙项目 - LearnArkTS
  • 编写首页代码
ts 复制代码
@Entry
@Component
struct Index {
  @State message: string = '学习ArkTS';

  build() {
    Column() {
      Text(this.message)
        .id('msg')
        .fontSize(30)
        .fontColor("red")
        .fontWeight(FontWeight.Bold)
        .margin(20)

      Button('运行')
        .fontColor(Color.Blue)
        .fontSize(30)
        .padding(10)
        .width(200)
        .margin(15)
        .backgroundColor('#44dd22')
        .foregroundColor('#ffffff')
        .onClick(() => {
          console.log(`欢迎你来${this.message}~`);
        })
    }
    .width('100%')
    .height('100%')
    .justifyContent(FlexAlign.Center)
    .backgroundColor('222222')
  }
}
  • 启动应用,查看结果
  • 单击【运行】按钮,查看日志

2. 类的定义

2.1 语法格式

ts 复制代码
class 类名 {
    定义体 // 包含字段、构造函数、属性和方法
}
  • 在ArkTS中,类使用关键字class定义;class之后是类的名称,类名称必须是合法的标识符,建议使用大驼峰命名风格来命名;类名称之后是以一对花括号括起来的class定义体,class定义体中可以定义一系列类的成员,包括字段、构造函数、属性和方法。每定义一个类,就创建了一个新的自定义类型。

2.2 创建类

  • Index.ets中创建PhysicalEducation
ts 复制代码
class PhysicalEducation {
  readonly studentID: string; // 学号
  examScore: number; // 考试得分

  // 构造方法
  constructor(studentID: string, examScore: number) {
    this.studentID = studentID;
    this.examScore = examScore;
  }

  // 计算课程总评分
  calculateTotalScore(): number {
    return this.examScore
  }
}
  • 代码说明PhysicalEducation 类代表体育课,包含学号和考试得分属性。构造函数初始化这些属性,calculateTotalScore 方法返回学生的体育课总分,即考试得分。该类适用于管理和计算体育课成绩。

3. 对象的创建

3.1 语法格式

ts 复制代码
new 类名([参数列表]);
  • 在ArkTS中,使用new 类名([参数列表])语法创建类实例,初始化属性并调用构造函数。

3.2 创建对象

  • Index.ets里创建test()函数
ts 复制代码
function test() {
  const physicalEducation: PhysicalEducation = new PhysicalEducation('20240101', 90);

  // 访问实例字段
  console.log(`学号:${physicalEducation.studentID}`);
  console.log(`考试得分:${physicalEducation.examScore}`);

  // 调用实例方法
  console.log(`课程得分:${physicalEducation.calculateTotalScore()}`);
}
  • 代码说明 :这段代码演示了如何创建PhysicalEducation类的实例,并初始化学号和考试得分。然后,它访问并打印实例的属性值,最后调用calculateTotalScore方法来获取并打印课程总评分。

  • 在按钮的单击事件里调用test()函数

4. 运行程序,查看效果

  • 单击【运行】按钮,查看日志输出信息

5. 实战总结

  • 本次实战通过创建鸿蒙项目,学习了ArkTS的基本语法,包括类的定义、对象的创建和方法调用。通过编写首页代码,实现了一个简单的用户界面,并在按钮点击事件中测试了自定义类的实例化和方法调用,最终在日志中验证了输出结果。这个过程加深了对ArkTS面向对象编程的理解,并实践了如何在鸿蒙应用中操作UI组件和处理事件。
相关推荐
charlie11451419142 分钟前
2026年正点原子开发板移植方案——从0开始的Rootfs之路(3)inittab 与 init 系统:Linux 启动的“第一号进程“全解析
linux·驱动开发·学习·嵌入式开发·嵌入式linux
wsx_iot1 小时前
TDengine学习
数据库·学习·tdengine
AI成长日志2 小时前
【笔面试算法学习专栏】二分查找专题:力扣hot100经典题目深度解析
学习·算法·面试
UnicornDev2 小时前
【HarmonyOS 6】空状态页面布局设计
华为·harmonyos·arkts·鸿蒙·鸿蒙系统
m0_564914923 小时前
AI学习课堂网站丨OPENMAIC丨清华团队开源项目
学习
开源盛世!!4 小时前
3.26-3.27学习笔记
笔记·学习
我的xiaodoujiao5 小时前
API 接口自动化测试详细图文教程学习系列7--相关Python基础知识6
python·学习·测试工具·pytest
山川行5 小时前
Python快速闯关8:内置函数
java·开发语言·前端·笔记·python·学习·visual studio
charlie1145141915 小时前
嵌入式C++教程实战之Linux下的单片机编程:从零搭建 STM32 开发工具链(2) —— HAL 库获取、启动文件坑位与目录搭建
linux·开发语言·c++·stm32·单片机·学习·嵌入式
知识分享小能手5 小时前
MongoDB入门学习教程,从入门到精通,MongoDB聚合框架(7)
数据库·学习·mongodb