仓颉之反射和注解的神秘力量

举报
空间案例小助手 发表于 2025/08/28 10:44:48 2025/08/28
【摘要】 案例结合代码体验,帮助大家更直观的了解仓颉语言中的I/O操作。

案例概述

背景与简介

华为开发者空间面向广大开发者群体提供专属的云上成长空间,预置免费华为跟技术工具和资源,为开发者提供学习、开发到部署的全旅程支持,开发者空间提供了AI原生应用引擎、AI Notebook、云开发环境、FunctionGraph云函数、Astro低代码等核心能力,并在算力、模型、平台、应用层实现全方位优化。

仓颉编程语言是一款面向全场景智能的新一代编程语言,主打原生智能化、天生全场景、高性能、强安全。主要应用于鸿蒙原生应用及服务应用等场景中,为开发者提供良好的编程体验。

反射指程序可以访问、检测和修改它本身状态或行为的一种机制。反射这一动态特性有以下的优点:

提高了程序的灵活性和扩展性。

程序能够在运行时获悉各种对象的类型,对其成员进行枚举、调用等操作。

允许在运行时创建新类型,无需提前硬编码。

但使用反射调用,其性能通常低于直接调用,因此反射机制主要应用于对灵活性和拓展性要求很高的系统框架上。

仓颉同样支持注解开发,开发者也可以通过自定义类型标注 @Annotation 方式创建自己的自定义注解。@Annotation 只能修饰 class,并且不能是 abstract 或 open 或 sealed 修饰的 class。当一个 class 声明它标注了 @Annotation,那么它必须要提供至少一个 const init 函数,否则编译器会报错。

案例优势

案例结合代码体验,帮助大家更直观的了解仓颉语言中的I/O操作。

案例流程

01.png


流程说明

1. 登录华为开发者空间,连接开发者空间云主机;

2. 使用CodeArt IDE for Cangjie创建仓颉工程;

3. 仓颉语言中反射和注解的练习使用

案例实操:仓颉之反射和注解的神秘力量 👈👈👈体验完整版案例,点击这里。

案例最终效果

通过反射访问成员

02.png

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。