外国做问卷可以赚钱的网站,太原房产网站建设,网页设计代码放图片,手机制作网页多少钱基础认证题库请移步#xff1a;HarmonyOS应用开发者基础认证题库 注#xff1a;有读者反馈#xff0c;题库的代码块比较多#xff0c;打开文章时会卡死。所以笔者将题库拆分#xff0c;单选题20个为一组#xff0c;多选题10个为一组#xff0c;题库目录如下#xff0c;…基础认证题库请移步HarmonyOS应用开发者基础认证题库 注有读者反馈题库的代码块比较多打开文章时会卡死。所以笔者将题库拆分单选题20个为一组多选题10个为一组题库目录如下读者可以按需跳转。如果对您的阅读产生不便笔者在这里向大家说声抱歉请各位读者原谅。完整的md文档等读者把题库整理完会将网盘链接发出。
序号目录
单选题 HarmonyOS应用开发者高级认证Next版本发布后最新题库 - 单选题序号1 HarmonyOS应用开发者高级认证Next版本发布后最新题库 - 单选题序号2 HarmonyOS应用开发者高级认证Next版本发布后最新题库 - 单选题序号3多选题 HarmonyOS应用开发者高级认证Next版本发布后最新题库 - 多选题序号1 HarmonyOS应用开发者高级认证Next版本发布后最新题库 - 多选题序号2 注题目是乱序每次考试选项的顺序都不同
单选题题库 - 序号3 41、在方舟字节码的函数调用规范中前三个参数表示的含义分别是
A、new.Target、this、函数对象本身
B、this、函数对象本身、new.Target
C、new.Target、函数对象本身、this
D、函数对象本身、new.Target、this
方舟字节码基本原理-学习ArkTS语言-基础入门 | 华为开发者联盟 (huawei.com) 42、下面关于方舟字节码格式IMM16_ID16_IMM8描述正确的是
A、8位操作码16位立即数16位id8位立即数
B、8位操作码16位立即数2个8位寄存器
C、8位操作码16位立即数16位id8位寄存器
D、16位前缀操作码16位立即数8位寄存器
方舟字节码基本原理-学习ArkTS语言-基础入门 | 华为开发者联盟 (huawei.com) 43、以下关于垂直滚动Grid组件使用cachedCount属性的说明正确的是**题目选项有误**
A、设置cachedCount为1则Grid在显示范围上下各缓存1个Gridltem
B、设置cachedCount为1则Grid在显示范围上下各缓存1行Gridltem
C、设置cachedCount为1则Grid在显示范围下方缓存1行Gridltem
D、设置cachedCount为1则Grid在显示范围下方缓存1个Gridltem
List-容器组件-基于ArkTS的声明式开发范式-ArkTS组件-ArkUI方舟UI框架-应用框架 | 华为开发者联盟 (huawei.com) 44、从桌面冷启动如下应用代码点击Change按钮5次整个过程中,代码中的2条log依次出现的次数是不确定把所有选项列出
class Data {num: numbertype: stringconstructor(num: number, type: string) {this.num num;this.type type;}
}Reusable
Component
struct Item {State data: Data | undefined undefined;aboutToAppear(): void {console.log(Demo log1);}aboutToReuse(params: ESObject): void {console.log(Demo 1og2);this.data params.data}build() {Text(num this.data?.num , type this.data?.type)}
}Entry
Component
struct Index {data1: Data new Data(1, type1);data2: Data new Data(2, type2);State data: Data this.data1build() {Column() {if (this.data.type type1) {Item({ data: this.data }).reuseId(this.data.type)} else {Item({ data: this.data }).reuseId(this.data.type)}Button(Change).onClick(() {if (this.data this.data1) {this.data this.data2} else {this.data this.data1}})}}
} A、2,4
B、6,0
C、1,0
D、1,5 45、以下哪份代码可以实现下图Grid布局
// A、通过设置Gridltem的columnStart和columnEnd
Entry
Component
struct GridExample3 {numbers: String[] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]scroller: Scroller new Scroller()build() {Column({ space: 5 }) {Grid(this.scroller) {ForEach(this.numbers, (day: string) {if (day 0 || day 5) {GridItem() {Text(day).fontSize(16).backgroundColor(0xF9CF93).width(100%).height(80).textAlign(TextAlign.Center)}.columnStart(1).columnEnd(4)} else {GridItem() {Text(day).fontSize(16).backgroundColor(0xF9CF93).width(100%).height(80).textAlign(TextAlign.Center)}}}, (day: string) day)}.columnsTemplate(1fr 1fr 1fr 1fr).columnsGap(10).rowsGap(10).scrollBar(BarState.Off).width(100%).backgroundColor(0xFAEEE0).height(350)}}
}// B、通过设置不同Gridltem的宽度
Entry
Component
struct GridExample3 {numbers: String[] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]scroller: Scroller new Scroller()columnGap: number 10gridItemWidth: number 80build() {Column({ space: 5 }) {Grid(this.scroller) {ForEach(this.numbers, (day: string) {if (day 0 || day 5) {GridItem() {Text(day).fontSize(16).backgroundColor(0xF9CF93).width(this.gridItemWidth * 4 this.columnGap * 3).height(80).textAlign(TextAlign.Center)}} else {GridItem() {Text(day).fontSize(16).backgroundColor(0xF9CF93).width(this.gridItemWidth).height(80).textAlign(TextAlign.Center)}}}, (day: string) day)}.columnsTemplate(1fr 1fr 1fr 1fr).columnsGap(this.columnGap).rowsGap(10).scrollBar(BarState.Off).width(100%).backgroundColor(0xFAEEE0).height(350)}}
}// C、通过GridLayoutOptions
Entry
Component
struct GridExample3 {numbers: String[] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]scroller: Scroller new Scroller()layoutOptions1: GridLayoutOptions {regularSize: [1, 1],irregularIndexes: [0, 5],}build() {Column({ space: 5 }) {Grid(this.scroller, this.layoutOptions1) {ForEach(this.numbers, (day: string) {GridItem() {Text(day).fontSize(16).backgroundColor (0xF9CF93).width(100%).height(80).textAlign(TextAlign.Center)}}, (day: string) day)}.columnsTemplate(1fr 1fr 1fr 1fr).columnsGap(10).rowsGap(10).scrollBar(BarState.Off).width(100%).backgroundColor(0xFAEEE0).height(350)}.align(Alignment.Center)}
} A、通过设置Gridltem的columnStart和columnEnd
B、通过设置不同Gridltem的宽度
C、通过GridLayoutOptions 46、已知下列代码PageOne页面为navigation中的某一子页面依次点击PageOne页面中toPageTwo按钮PageTwo页面中toPageOne按钮此时获取当前页面的路由栈数量为多少不确定把所有选项列出
// PageOne.ets
Component
export struct PageOneTmp {Consume(pageInfos) pageInfos: NavPathStack;build() {NavDestination() {Column() {Button(toPageTwo, { stateEffect: true, type: ButtonType.Capsule }).width(80%).height(40).margin(20).onClick(() {this.pageInfos.pushPathByName(pageTwo,)})}.width(100%).height(100%) }.title(pageOne).onBackPressed(() {const popDestinationInfo this.pageInfos.pop()console.log(pop返回值 JSON.stringify(popDestinationInfo))return true})}
}// PageTwo.ets
export class Pages{names: string values: NavPathStack | null null
}Builder
export function pageTwoTmp(info: Pages){NavDestination() {Column(){Button(toPageOne, { stateEffect: true, type: ButtonType.Capsule }).width(80%).height(40).margin(20).onClick(() {(info.values as NavPathStack).pushPathByName(pageOne, null)})}.width(100%).height(100%)}.title(pageTwo).onBackPressed(() {(info.values as NavPathStack).pop()return true})
} A、1
B、2
C、3
D、4 47、在HarmonyOS应用开发中当开发者遇到需要分析Release版本应用的崩溃或异常堆栈信息时为了准确地将堆栈追踪信息对应到源代码的具体位置以下哪个描述是正确的做法或理解
A、开发者需手动将Release构建生成的so文件与源代码进行映射配合第三方工具进行堆栈信息还原虽然过程繁琐但最终能定位到问题代码位置
B.因为Release应用经过优化和去除Debug信息 直接从堆栈跟踪到源代码行号是不可能的开发者只能依靠日志信息手工推测问题所在
C、DevEco Studio提供的Release应用堆栈解析功能要求开发者在遇到问题时需上传构建产物中的特定文件如so、 source map、nameCache等到指定工具或界面借助这些文件辅助解析堆栈信息实现从Release堆栈到源码的映射便于快速定位问题
D、DevEco Studio通过集成的Release应用堆栈解析功能自动利用构建时产生的so文件、source map文件、nameCache文件等无需额外操作即可直接在Release应用中提供详细的源码级堆栈追踪信息
堆栈轨迹分析-故障分析-应用/服务调试-DevEco Studio | 华为开发者联盟 (huawei.com) 48、小李正在使用DevEco Studio进行Harmony0S应用的开发工作他需要对一个频繁被调用的函数calculateData()进行重构为了帮助小李高效地找到calculateData()函数的所有引用位置并确保重构时考虑周全以下哪个步骤是正确的使用DevEco Studio的“Find Usages”功能的操作方法
A、小李应将光标置于calculateData()函数的名称上按下Ctrl Shift FmacOS为Command Shift F全局搜索该函数名然后在搜索结果中筛选出真正的调用位置。
B、小李应该在菜单栏中选择“Navigate” “Class”来打开类浏览器 从中找到calculateData()函数, 并在此界面中手动检查所有引用。
C、小李只需将光标定位在calculateData()函数名上右键点击并选择“Find Usages或者直接使用快捷键Alt F7macOS为Option F7DevEco Studio会自动列出该函数在项目中的所有引用位置。
D、小李应当在项目目录树中找到calculateData()函数所在的文件 直接双击打开文件然后逐行扫描代码以手动查找该函数的所有调用位置。 49、在使用DevEco Studio的Profiler进行HarmonyOS应用或服务性能分析时面对应用出现卡顿、加载慢等性能瓶颈问题以下哪个描述最贴切地说明了“Time场景分析任务”的功能及其对开发者优化流程的帮助
A、Time场景分析任务仅提供应用/服务运行时的CPU使用率概览帮助开发者粗略判断性能瓶颈但不提供深入分析
B、Time场景分析任务专注于内存管理帮助开发者监控应用内存泄漏但对解决卡顿和加载耗时问题帮助有限
C、Time场景分析任务在应用运行时通过显示所有函数执行的耗时排序列表辅助开发者手动对比寻找耗时最短的函数进行优化
D、Time场景分析任务展示热点区域内的CPU和进程级调用栈耗时情况支持代码跳转助力开发者快速定位并优化耗时较长的代码段 50、开发者小林正在使用DevEco Studio开发一款HarmonyOS应用 并在真机上进行调试。他在运行应用的过程中突然发现一处UI布局需要微调希望在不中断当前应用运行的情况下看到调整效果基于DevEco Studio提供的Hot Reload (热重载)能力以下哪一种做法能让小林最有效地实现他的需求
A、继续运行应用手动重启应用后检查布局是否符合预期
B、在不关闭应用的情况下直接修改代码并保存借助Hot Reload功能在真机上实时查看布局调整的效果
C、使用模拟器替代真机进行调试因为Hot Reload仅在模拟器.上支持代码改动的即时生效
D、立即停止应用修改代码后重新编译并部署到真机上 51、项目需要为不同的设备形态如手机、智能手表提供定制化构建。请说明如何在DevEco studio中设置不同的构建配置以生成针对不同设备的hap包?
A、在工程级别build-profile.json5定义多个product,在每个product的config/distributionFilter中定义不同的设备类型
B、在工程级别build-profile.json5定义多个product,在每个product的config/deviceType中定义不同的设备类型
C、在模块级别build-profile.json5定义多个target, 在每个target的config/deviceType中 定义不同的设备类型
D、在模块级别build-profile.json5定义多个target,在每个target的config/distributionFilter中定义不同的设备类型 52、一个复杂的项目该项目不仅包含主入口模块Entry Module还有多个特性的功能模块Feature Modules/HSP并且这些模块存在着相互调用关系。为了确保在调试过程中能够完整地测试所有交互逻辑需要将涉及到的所有模块的HAP包都部署到目标设备上。请从以下选项中选择正确的操作步骤来配置DevEco Studio以便一次性部署和调试项目中的多个模块
A、无需特殊配置DevEco Studio会自动检测到项目中的所有模块依赖并在每次调试运行时自动部署所有相关HAP包。
B、在项目结构界面手动选择每个模块单独编译并逐一将生成的HAP包通过HDC命令推送到设备上。
C、进入“Run Edit Configurations”菜单“Deploy Multi Hap”选项卡下勾选“Deploy Multi Hap Packages”随后在列表中选择需要部署的模块。
D、直接点击运行按钮DevEco Studio会弹出对话框询问需要部署哪些模块从中选择需要的模块后开始调试。 53、项目中涉及多个类的继承与重写。为了快速实现子类对父类方法的重写小华想利用DevEco Studio提供的便捷功能来提高开发效率。他了解到通过一个特定的操作流程可以直接依据父类的模板生成子类中需要重写的方法代码而无需手动编写完整方法体在DevEco Studio中如何正确使用Override Methods功能来快速生成子类需要重写的方法代码
A、将光标放置于任何代码行按下CtrlB然后在弹出菜单中选择Override Methods之后勾选需要重写的方法并确认。
B、在项目结构视图中找到目标子类双击打开后直接在代码编辑区输入重写方法的签名DevEco Studio将自动完成剩余代 码。
C、通过菜单栏File Settings配置Override Methods快捷方式之后在代码中仅需选中父类方法名即可自动在子类中生 成重写代码。
D、将光标定位到子类的定义处按下CtrlO或右键单击选择Generate… Override Methods在弹出的对话框中选择 要重写的方法点击OK完成生成。 54、下面的配置存在有几处错误
// module. json5配置文件:
{module: {name: entry,// ...abilities: [{name: EntryAbility,srcEntry: ./ets/entryability/EntryAbility.ets,// ...skills: [{entities: [entity.system.home],actions: [ohos.want.action.home]}],metadata: [{name: ohos.entry.shortcuts,resource: $profile: shortcuts_ config}]}]}
}// 在/resources/base/profile/目录下配置shortcuts_config.json配置文件:
{shortcuts: [{shortcutId: id_test1,label: shortcutLabel,icon: $media:shortcutIcon,wants: [{bundleName: com.ohos.hello,moduleName: entry,abilityName: EntryAbility}]}]
} A、1
B、2
C、3
D、4 55、下面的配置存在有几处错误
// app.json5配置文件:
{app: {bundleName: com.example.myapplication,vendor: example,versionCode: 1000000,versionName: 1.0.2,icon: $media:app_icon,1abel: $string:app_namebundleType: app}
}// module.json5配置文件:
{module: {name: feature,//...atomicService: {preloads:[{moduleName: feature}]}}
}
A、1
B、2
C、3
D、4 56、1在UIAbility的onCreate生命周期中通过EventHub的on注册“event1”和“event2”事件。
import { hilog } from kit.PerformanceAnalysisKit;
import { UIAbility, Want, AbilityConstant } from kit. AbilityKit;
const DOMAIN NUMBER: number 0xFF0O;
const TAG: string [EventAbility];
export default class EntryAbility extends UIAbility {
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
//获取UlAbility实例的上下文
let context this.context;
//获取eventHub
let eventhub this.context.eventHub;
//执行订阅操作
eventhub.on(event1, this.eventFunc);
eventhub.on(event2, this.eventFunc);
2在UI组件的click处理事件中调用如下的eventHubFunc连续点击2次该控件后运行日志输出是什么 A、 B、 C、 D、 57、singleton模式的UIAbility在冷启动时生命周期的执行顺序是
A、onCreate-onWindowStageCreate-onForeground
B、onCreate-onBackground-onForeground
C、onCreate -onForeground-onWindowStageCreate
D、onCreate-onBackground-onWindowStageCreate 58、开发者开发了一个应用该应用只有一个hap包其module.json5中abilities的配置如下所示包含1个UlAbility无Web组件、1个FormExtensionAbility组件 、1个WorkSchedulerExtensionAbility组件那么该应用在运行过程中最多会存在几个应用进程 A、1个
B、2个
C、3个
D、4个 59、hiAppEvent提供的Watcher接口需要订阅到OS的崩溃事件正确的实现方式 60、当标记了Reuseable的自定义组件实现了组件复用后这个组件的复用范围是什么?
A、标记了Reuseable的自定义组件的外层容器节点范围内
B、标记了Reuseable的自定义组件的父组件范围内
C、整个页面都可以复用
D、整个应用内都可以复用