亲爱的读者们,我在这里承诺会尽最大努力确保答案的准确性。虽然有些题目可能会有错误,但是您的反馈对我而言是非常宝贵的。如果您发现任何错误或者有任何建议,都欢迎在评论区或私信中告诉我。您的每一条反馈都将帮助我不断完善这篇文章,让更多的读者获得丰富且准确的信息。谢谢您的支持和理解!
选项顺序每次考试的顺序都会不同,要看清楚
单选题
1、下面关于方舟字节码格式PREF_IMM16_v8_v8描述正确的
16位前缀操作码,16位立即数,2个8位寄存器
2、ARKTS支持以下哪个函数?(C)
A.Object.getOwnPropertyDescriptor();
B.Object.getOwnPropertyDescriptors();
C.Object.values();
D.Object.hasOwnProperty();
3、下面关于方舟字节码格式IMM16_ID16_IMM8描述正确的是
8位操作码,16位立即数,16位id,8位立即数
4、以下哪些赋值语句在ArkTS中合法
class c()
let value1 : number =null;
let value2 : string l null = null;
let value3: string l undefined =null;
let value4 : C = null
value2
5、Text组件不支持以下哪种ABCD代码中哪种使用方式?(C )
A:
@Entry
@Component
struct TextExample{
build(){
Column({space:8}){
Text('textshadow').fontsize(9).fontcolor(0xcccccc).margin(15).width('90%') }}}
B:
@Entry
@Component
struct SpanExample{build(){Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Start, justifycontent: FlexA1ign.SpaceBetween }){
Text(){Span('In Line')Span('Component')Span('!')}}..width('100%').height(250).padding({ left:35,right: 35,top: 35 })
}}
C:
@Entry
@Component
struct styledstringDemo{scroll:Scroller =new Scroller();
layout:TextLayoutManager =new TextLayoutManager();
controller1:TextController =new TextController();
async onPageShow(){this.controller1.setLayout(this.layout)}
build(){Column(){Text(undefined,{controller:this.controller1 })}.width('100%')}}
D:
@Entry
@Component
struct styledStringDemo {
scroll:Scroller =new Scroller();
mutableStyledString: Mutablestyledstring = new Mutablestyledstring("test hello world", [{
start:0,length:5,
styledKey:styledstringKey.FONT,
styledValue:new Textstyle({fontColor:Color.Pink })}]);
controller1:TextController=new TextController();
async onPageshow(){
this.controller1.setstyledstring(this.mutablestyledstring)}
build(){
Column(){Text(undefined,{ controller: this.controller1 })}.width('100%')}}
6、以下哪个装饰器用来表示并发共享对象?(D)
A.@Style
B.@Shared
C.@State
D.@Sendable
7、以下关于ArkUI NavDestination组件的生命周期执行顺序中正确的是
onWillappear->onAppear->onWillShow->onShow->onWillHide->onHidden->onWillDisappear->onDisappear
8、下面哪种转场效果在入场动画时,表现为从透明度为0、相对于组件正常显示位置x方向平移10evp的状态,到默认的透明度为1、相对于组件不平移的状态,且透明度动画和平移动画的动画时长均为2000ms?(B)
A.TransitionEffect.asymmetric(TransitionEffect.OPACiTY.animation({duration:2000}),TransitionEffect.translate({x:100}).animation({duration: 2000}))
B.TransitionEffect.OPAClTY.animation({duration: 2000)).combine(TransitionEffect.translate({x:100}))
C.TransitionEffect.OPACITY.combine(TransitionEffect.translate({x:100}).animation({duration: 2000}))
D.TransitionEffect.translate({x:100}).combine(TransitionEffect.OPACITY.animation({duration: 2000}))
9. 使用promptAction.showToast如何设置显示在其他应用之上? A
A. ToastShowMode TOP_MOAST
B. ToastShowMode.DEFAULT
C. ToastShowMode SYSTEM TOP.MOST
D. 无需配置,默认是示在其他应用之上
10、依次点击ABCD四个按钮,其中不会触发ui刷新的是 列表
buttonC 包含Jim的按钮
11、从桌面冷启动如下应用,点击Change按钮5次,整个过程中,代码中的2条log依次出现的次数
1,0
12. 现有一个宽高分别为200px的XComponent组件,其绑定了一个XComponentController(xcController)依次进行如下操作,(1)xcController.setXComponentSurfaceRect( {surfacewidth: 150, surfaceHeight: 500})
(2)设置XComponent组件的padding为{top:5px,left:10px,bottom:15px,right:20px}
(3)将XComponent组件大小改为300pxx300px(4)给xComponent组件设置一个宽度为2px的边框
(5)xcController.setXComponentSurfaceRect({ offsetX:-20,offsetY: 50, surfacewidth:200,surfaceHeight : -100})之后,调用xcController.getXComponentSurfaceRect()的返回值为 B
A.{offsetx:81,offsetY:-89, surfaceWidth: 200, surfaceHeight 0 )
B{offsetX:75,offsetY:-100,surfacewidth: 150, surfaceHeight. 500 }
C.(offsetx:-20,offsetY:50, surfaceWidth: 200, surfaceHeight: 500 }
D.{offsetX: 81,offsetY:-89,surfaceWidth: 150, surfaceHeight: 500 }
13、以下关于垂直滚动Grid组件使用cachedcount属性的说明正确的是 C
A. 设置cachedCount为1,则Grid在显示范国下方缓存1行Grldltem
B. 设置cachedCount为1,则Grid在显示范国下方级存1个Gridltem
C. 设置cachedCount为1,则Grid在显示范国上下各缓存1行Griditem
D. 设置cachedCount为1,则Grid在显示范国上下各缓存1个Gridltem
14. 在使用DevEco Studio的Profiler进行Harmony0S应用性能优化的流程中,以下哪个步骤最恰当地描述了开发者利用Profiler工具进行性能问题识别、定位、优化及验证的完整过程 C
A. 首先使用“Realtime Monitor”实时监控,观察应用类源消耗,一旦发现CPU或内存异常,直接修改代码并重新编译
B. 在发现应用性能不佳时,直接查看代码逻辑,凭经验修改后;利用Profiler的“Realtime Monitor”确认资源消耗是否降低
C. 利用“Realtime Monitor”初步识别性能瓶颈,创建深度分析任务定位很因。根据分析结果优化代码,再用“Realtime Monior”验证优化效果
D. 仅通过创建深度分析任务,利用perf数据详编分析性能颈,改代码后,不再进行验证直接发布应用
15、一个复杂的项目,该项目不仅包含主入口模块(Entry Module),还有多个特性的功能模块(Feature Modules/HSP),并且这些模块间存在着相互调用关系。为了确保在调试过程中能够完整地测试所有交互逻辑,需要将涉及到的所有模块的HAP包都部署到目标设备上。请从以下选项中选择正确的操作步骤来配置DevEco Studio,以便一次性部署和调试项目中的多个模块 A
A进入“Run> Edit Configurations"菜单,在“Deploy Multi Hap”选项卡下,勾选“Deploy Multi HapPackages”,随后在列表中选择需要部署的模块。
B直接点击运行按钮,DevEco Studio会弹出对话框询问需要部署哪些模块,从中选择需要的模块后开始调试。
C在项目结构界面手动选择每个模块,单独编译并逐一将生成的HAP包通过HDC命令推送到设备上。
D无需特殊配置,DevEco Studio会自动检测到项目中的所有模块依赖,并在每次调试运行时自动部署所有相关HAP包。
16、当您开始开发一个应用/服务时,首先需要根据工程创建向导,创建一个新的工程,工具会自动生成对应的代码和资源模板。关于新建工程,下列选项说法正确的是? B
A. 应用包名(Bundle name)必须为以点号(.)分隔的字符串,且至少包含三段,每段中仪允许使用英文字号、数字 如"com.example.myapplication
B. Compatible SDK是兼容的最低API Version
C. 工程文件本地存储路径[Save location)允许包含中文字符。
D. 创建用于Lite Wearable设备的工程,可以选择Native C ++工程模板
17、项目中包含多个模块和数千行代码。随着开发的深入,项目中的ArkTS源代码文件逐渐积累了大量import语句,其中不乏未使用的import以及不规范的排序情况,关于DevEco studio的编辑器的“optimize Imports”,以下说法正确的是
可以在菜单栏中依次点击“Code”>”Reformat Code”来达到优化import的目的,因为“Optimize imports”功能已整合进“Reformat Code”中
18、小李正在使用DevEco studio进行Harmonyos应用的开发工作,他需要对一个频繁被调用的函数calculateData()进行重构,为了帮助小李高效地找到calculateData()函数的所有引用位置,并确保重构时考虑周全,以下哪个步骤是正确的使用DevEco studio的"FindUsages”功能的操作方法
小李只需将光标定位在calculateData)函数名上,右键点击并选择"Find Usages”,或者直接使用快捷键Alt +F7(macOS为Option + F7) ,DevEco Studio会自动列出该函数在项目中的所有引用位置。
19、在使用DevEco studio的Profiler进行Harmonyos应用或服务内存管理优化时,以下哪个描述最准确地概述了“Allocation Insight”功能在识别和解决内存问题中的作用
Allocation Insight通过分析应用服务运行时的内存分配及使用情况,辅助定位内存泄漏、内存抖动和溢出问题,支持优化内存使用
20、在使用DevEco Studio的Profiler进行Harmonyos应用或服务性能分析时,面对应用出现卡顿、加载慢等性能瓶颈问题,以下哪个描述最贴切地说明了“Time场景分析任务”的功能及其对开发者优化流程的帮助
Time场景分析任务展示热点区域内的CPU和进程级调用栈耗时情况,支持代码跳转,助力开发者快速定位并优化耗时较长的代码段
21.开发者在编写ArkUI代码时,想要提前预览下所编写的组件的效果,下述哪个组件可以使用DevEco studio Previewer正常预览?
@Preview @Component struct TitleSample { @StorageProp('title'”) title: string = 'PlaceHolder'; build( ){Text(this.title)}}
22. HAR(Harmony Archive)是Harmony0S提供的共享包,以下关于HAR的描述错误的是 C
A. HAR可以作为二方库和三方库提供给其他应用使用,如果要对代码资产进行保护时,建饮开启混淆能力
B. HAR不支持引用AppScope目录中的资源。在编译构建时,AppScope中的内容不会打包到HAR中,因此会导致HAR资源引用失败
C. HAR不支持使用page页面
D. HAR不支持在设备上单独安装/运行,只能作为应用模块的依赖项被引用
23. 在编译构建HAP时,会从HAP模块及依赖的模块中收集资源文件,如果不同模块下的资源文件出现重名冲突时,会按照优先级进行覆盖,现在有一个HAP依赖了两个HAR,依赖配置如下所示
// oh-package.json5
{
"dependencies": {
"dayjs": "^1.10.4",
"lottie": "^2.0.0"
}
}
AppScope>HAP包自身模块>dayjs模块>lottie模块
24.根据代码,以下ABCD解释正确的是(C)
enum Mode {
fullScreen,halfScreen
}
@Entry
@Component
struct Page{
@State title: string =”@state mode:Mode = Mode.fullScreen;
isShownTitle(): boolean{if(this.mode == Mode.fullScreen){this.title = "Title";
return true;
} else {
this.title="Section";return false;}}
build(){
Column(){
if(this.isShownTitle()){Text(`${this.title}`)}else{
Text(`${this.title}`)}
ChangeMode({ mode: this.mode})
}}}
@component
struct ChangeMode {@Prop mode: Mode;build(){
Row({space:20}){
Button('full screen').onclick(()=>{this.mode = Mode.fullScreen;})Button('half screen').onclick(()=>{this.mode = Mode.halfScreen;
})}}}
A本例子可以运行起来,所以代码没有问题,
B为了避免@Prop的拷贝,可以优化使用@Link,在该例子中行为和@Prop-样。
C在ChangeMode里改变mode的值,会触发其父组件Page的Title内容的切换
D在自定义组件Page的build方法里改变状态变量是非法操作,可能导致未定义的异堂UI行为.
25.一个应用的一个UIAblity,其exported字段配置为false,以下哪个场景可以拉起这个
UIAblity.caller应用在后台,申请了长时任务,有START_INVISIBLE_ABILITY权限;
26.以下关于ArkUI NavDestination组件的生命周期执行顺序中正确的是?(A)
A.onWillappear->onAppear->onWillShow->onShow->onWillHide->onHidden->onWillDisappear->onDisappear
B.onWillappear->onWillShow->onShow->onAppear->onWillHide->onHidden->onWillDisappear->onDisappear
C.onWillappear->onAppear->onWillShow->onShow->onWillHide->onWillDisappear->onHidden->onDisappear
D.onWillappear->onAppear->onWillShow->onShow->onWillDisappear->onWillHide->onHidden->onDisappear
27.singleton模式的UIAbility,在冷启动时生命周期的执行顺序是:
onCreate->onWindowStageCreate->onForeground
28.hiAppEvent提供的Watcher接口,()属性不配置,会导致编译报错,产生"ArkTS compiler Error"
name
29.作为一个应用开发者,想搭建运维平台,想在应用内定时读取当前的内存信息,可以通过()接口来实现。
hiDebug
30.当使用状态变量进行ArkUI组件间数据通信的时候,如果两个组件间没有直接的嵌套关系(非父子和祖孙关系组件),但是他们又属于同一页面,最佳的装饰器应该选用哪个?(C)
A.@Provide+@Consume
B.@State+@Link
C.LocalStorage
D.AppStorage