2026最新鸿蒙开发面试题合集(持续更新中......)
·
平时在面试时候每次都要准备很多,于是将平时遇见的最常见的面试题做一下汇总,方便自己查看,后面也会持续更新中。
1、鸿蒙中应用、UIAbility、窗口、页面、组件之间的关系,页面和自定义组件生命周期有哪些?
这个可以参考自己写的博文:鸿蒙中应用、UIAbility、窗口、页面、组件之间的关系
2、鸿蒙中的状态管理有哪些
参考博文:鸿蒙中状态管理和HarmonyOs中一些状态装饰器
3、鸿蒙中的存储有哪些
参考博文:鸿蒙中LocalStorage和AppStorage用法
4、鸿蒙中怎么数据持久化?
- 用户首选项(Preferences):这是一种轻量级的配置数据持久化方式,适用于保存应用配置信息、用户偏好设置等。它通过文本形式保存数据,并且数据会全量加载到内存中,因此访问速度快,但不适合存储大量数据。
- 键值型数据库(KV-Store):适用于存储结构简单的数据,如商品名称和价格、员工工号和出勤状态等。键值型数据库以“键值对”的形式组织数据,适合数据关系不复杂的场景。
- 关系型数据库(RelationalStore):基于SQLite,适用于存储包含复杂关系的数据,如学生信息、雇员信息等。关系型数据库提供了一系列SQL操作,如增删改查等。
5、@style和@extent的区别
1、@style是将重复性多样式提炼成一个方法,以便在重复性调用。
2、他仅支持公共属性和通用事件,例如width,background等,文本特有属性不支持,例如text的fontSize,fontColor等
3、他不支持入参
4、他可以定义成全局函数也可以定义成局部函数,局部属性函数需要添加this调用,全局需要添加function关键字
5、优先级局部大于全局,他会先去找局部函数,再去找全局函数
@extent仅支持全局定义,不支持局部定义,
支持封装指定组件的私有属性,指定事件和自身定义的全局方法,当然,他也支持传递参数
@Extend(Text)
function makeTextStyle({
.width("100%")
.fontSize(30)
.fontColor("#f22") }
Column() {
Text("文本组件样式")
.makeTextStyle()
}
.height("100%")
.width("100%")
更多推荐



所有评论(0)