Android工程师笔试卷试题包括答案.docx
安卓工程师招聘笔试题与参考答案(某大型集团公司)
招聘安卓工程师笔试题与参考答案(某大型集团公司)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、在Android开发中,以下哪个类是用来处理XML布局文件的?A. ViewB. ActivityC. TextViewD. LinearLayout2、以下哪个关键字用于定义一个接口?A. interfaceB. extendsC. implementsD. class3、关于Android开发中Activity的生命周期,下列说法错误的是:• A. Activity生命周期中会依次经历onCreate()、onStart()和onResume()三个方法。
• B. 当Activity变为不可见状态且其他窗口遮盖它时,会触发onPause()方法。
• C. 如果Activity被销毁,那么会依次调用onPause()和onDestroy()方法。
• D. 当Activity进入可见状态时会首先调用onStart()方法。
4、关于Android中的Intent和Service组件交互,以下说法正确的是:• A. Intent可以直接启动一个Service组件。
• B. Service组件启动后会在主线程中运行。
• C. Intent用来获取Service中运行的结果数据。
• D. 使用bindService方法启动的Service可以停止正在运行的其他Service。
5、在Android开发中,以下哪个类是用来管理应用程序的生命周期的?A. ActivityB. ServiceC. BroadcastReceiverD. IntentService6、在Android应用中,以下哪个文件定义了应用的布局?A. AndroidManifest.xmlB. res/layout/activity_main.xmlC. src/main/java/com/example/myapp/MainActivity.javaD. build.gradle7、关于Android系统的组件化架构,以下哪项描述是正确的?• A. Android的组件化架构允许开发者在应用内部自由地移动组件位置,无需考虑组件间的依赖关系。
android开发笔试题及答案
android开发笔试题及答案一、选择题1. 下列哪个不是Android开发中常用的布局控件?A. LinearLayoutB. RelativeLayoutC. ConstraintLayoutD. Button答案:D2. 在Android中,下列哪个方法用于启动一个新的Activity?A. startActivity()B. startService()C. bindService()D. sendBroadcast()答案:A3. 下列哪个不是Android中的四大组件?A. ActivityB. ServiceC. Content ProviderD. View答案:D4. 在Android开发中,下列哪个不是UI线程?A. 主线程B. UI线程C. 子线程D. 工作线程答案:C5. 在Android中,下列哪个不是用于处理网络请求的类?A. HttpURLConnectionB. HttpClientC. AsyncTaskD. HttpUrlConnection答案:C二、填空题1. 在Android中,______是用来定义一个应用程序的可执行组件。
答案:Activity2. AndroidManifest.xml文件是Android应用的______。
答案:配置文件3. 在Android开发中,______是用来实现数据持久化的一种方式。
答案:SQLite4. 在Android中,______是用来处理后台任务的。
答案:Service5. Android中,______是用来进行网络通信的。
答案:HTTPURLConnection三、简答题1. 请简述Android中Activity和Fragment的关系。
答案:Activity是Android应用程序中的基本构建块,它是一个可以包含用户界面的屏幕。
Fragment是Activity的一部分,可以被添加到Activity中,用来管理用户界面的一部分。
android开发笔试题及答案
Android开发笔试题及答案一、选择题(20题,每题2分,共40分)1.java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分类,按功能分为:(),如果为读取的内容进行处理后再输出,需要使用下列哪种流?(CG)A、输入流和输出流B、字节流和字符流C、节点流和处理流D、File streamE、Pipe streamF、Random streamG、Filter stream2.下列代码的执行结果是:(B)public class Test3{public static void main(String args[]){System.out.print(100%3);System.out.print(",");System.out.println(100%3.0);}}A、1,1B、1,1.0C、1.0,1D、1.0,1.03.以下程序的运行结果为( B )public class IfTest{public static void main(String args[]){int x=3;int y=1;if(x==y)System.out.println("Not equal");elseSystem.out.println("Equal");}}A、Not equalB、EqualC、无输出D、编译出错4.Java语言中字符串“学Java”所占的内存空间是(A)A. 6个字节B. 7个字节C. 10个字节D. 11个字节5.关于下列程序段的输出结果,说法正确的是:(D )public class MyClass{static int i;public static void main(String argv[]){System.out.println(i);}}A、有错误,变量i没有初始化。
B、nullC、1D、06.下列哪些语句关于内存回收的说明是正确的? ( B)A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存D、内存回收程序可以在指定的时间释放内存对象7. Math.round(11.5)等于多少(). Math.round(-11.5)等于多少(C).A、11 ,-11B、11 ,-12C、12 ,-11D、12 ,-128.下列程序段的输出结果是:( B)void complicatedexpression_r(){int x=20, y=30;boolean b;b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60;System.out.println(b);}A、trueB、falseC、1D、09.activity对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(D)A、onPause()B、onCreate()C、onResume()D、onStart()10.android 中下列属于Intent的作用的是(C)A、实现应用程序间的数据共享B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带D、处理一个应用程序整体性的工作11.下列属于SAX解析xml文件的优点的是(B)A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能B、不用事先调入整个文档,占用资源少C、整个文档调入内存,浪费时间和空间D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失12.下面的对自定style的方式正确的是(A)A、<resources><style name="myStyle"><item name="android:layout_width">fill_parent</item></style></resources>B、<style name="myStyle"><item name="android:layout_width">fill_parent</item></style>C、<resources><item name="android:layout_width">fill_parent</item></resources>D、<resources><style name="android:layout_width">fill_parent</style></resources>13.在SQL Server 2005中运行如下T-SQL语句,假定SALES表中有多行数据,执行查询之后的结果是(D)。
android笔试题及答案
Android开发笔试题及答案一、选择题(20题,每题2分,共40分)包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分类,按功能分为:(C),如果为读取的内容进行处理后再输出,需要使用下列哪种流(G)A、输入流和输出流B、字节流和字符流C、节点流和处理流D、File streamE、Pipe streamF、Random streamG、Filter stream2.下列代码的执行结果是:(B)public class Test3{public static void main(String args[]){}}A、1,1B、1,C、,1D、,3.以下程序的运行结果为(B)public class IfTest{public static void main(String args[]){int x=3;int y=1;if(x==y)else}}A、Not equalB、EqualC、无输出D、编译出错语言中字符串“学Java”所占的内存空间是(A)A. 6个字节B. 7个字节C. 10个字节D. 11个字节5.关于下列程序段的输出结果,说法正确的是:(D?)public class MyClass{static int i;public static void main(String argv[]){}}A、有错误,变量i没有初始化。
B、nullC、1D、06.下列哪些语句关于内存回收的说明是正确的 ( B)A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存D、内存回收程序可以在指定的时间释放内存对象7. 等于多少(). 等于多少(C).A、11 ,-11B、11 ,-12C、12 ,-11D、12 ,-128.下列程序段的输出结果是:(?B)void complicatedexpression_r(){int x=20, y=30;boolean b;b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60;}A、trueB、falseC、1D、0对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(D)A、onPause()B、onCreate()C、 onResume()D、onStart()中下列属于Intent的作用的是(C)A、实现应用程序间的数据共享B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带D、处理一个应用程序整体性的工作11.下列属于SAX解析xml文件的优点的是(B)A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能B、不用事先调入整个文档,占用资源少C、整个文档调入内存,浪费时间和空间D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失12.下面的对自定style的方式正确的是(A)A、 <resources><style name="myStyle"><item name="android:layout_width">fill_parent</item> </style></resources>B、 <style name="myStyle"><item name="android:layout_width">fill_parent</item> </style>C、 <resources><item name="android:layout_width">fill_parent</item></resources>D、 <resources><style name="android:layout_width">fill_parent</style> </resources>13.在SQL Server 2005中运行如下T-SQL语句,假定SALES表中有多行数据,执行查询之后的结果是(D)。
android 笔试题及答案
android 笔试题及答案一、选择题1. 下列哪个不是Android应用的组成部分?A. 清单文件(AndroidManifest.xml)B. Java源代码文件C. 图片和资源文件D. 执行文件答案:D2. Android系统的内核基于以下哪个操作系统?A. WindowsB. LinuxC. macOSD. iOS答案:B3. 在Android开发中,以下哪个不是常用的布局文件?A. LinearLayoutB. RelativeLayoutC. FrameLayoutD. TableView答案:D4. 在Android中,以下哪个不是四大组件?A. ActivityB. ServiceC. IntentD. ContentProvider答案:C5. 在Android中,以下哪个不是常用的存储方式?A. SharedPreferencesB. SQLite数据库C. 文件存储D. 内存缓存答案:D二、填空题1. Activity的生命周期包括以下几个方法:onCreate、onStart、______、onStop、onDestroy。
填空答案:onResume2. ______是Android系统提供的轻量级跨进程通信方式。
填空答案:AIDL(Android Interface Definition Language)3. 在Android中,使用______可以发送一个广播给其他应用或系统组件。
填空答案:Intent4. 在Android开发中,______是一种将组件从布局文件中实例化的机制。
填空答案:LayoutInflater5. 使用______可以将一个应用发布到Google Play商店。
填空答案:Android Studio、Android Developer Console三、问答题1. 什么是Fragment?它的作用是什么?答案:Fragment是Android中一种可重复使用的界面组件,它可以嵌入到Activity中,并且可以独立地管理自己的生命周期。
安卓工程师招聘笔试题及解答(某大型国企)2024年
2024年招聘安卓工程师笔试题及解答(某大型国企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下关于Android开发中的Activity生命周期,下列说法正确的是:A. 当Activity启动时,会立即调用onCreate()方法B. 当Activity启动时,会立即调用onStart()方法C. 当Activity即将停止时,会调用onDestroy()方法D. 当Activity即将可见时,会调用onPause()方法2、在Android开发中,以下哪个不是布局文件中常用的属性?A. android:layout_widthB. android:layout_heightC. android:layout_weightD. android:contentDescription3、以下哪个选项不属于Android开发中常用的UI布局方式?A、LinearLayoutB、RelativeLayoutC、FrameLayoutD、RecyclerView4、以下哪个API用于查询设备上已安装的应用程序?A、getInstalledApplicationsB、getApplicationsC、getInstalledPackagesD、getPackages5、以下关于Android应用开发中Activity生命周期的描述,错误的是:A. 当Activity创建时,会调用onCreate()方法B. 当Activity即将可见但不占用用户界面时,会调用onPause()方法C. 当Activity完全不可见时,会调用onStop()方法D. 当Activity从后台重新回到前台时,会调用onRestart()方法6、在Android开发中,以下哪个组件用于管理应用的数据持久化?A. ActivityB. ServiceC. BroadcastReceiverD. SharedPreferences7、以下哪个选项不属于Android开发中常用的UI布局方式?A、LinearLayoutB、RelativeLayoutC、FrameLayoutD、RecyclerView8、以下哪个不是Android开发中的进程?A、主进程B、后台进程C、系统进程D、服务进程9、以下哪个选项是安卓开发中用于存储应用数据的最佳方式?A.SharedPreferencesB.内部存储C.外部存储D.数据库 10、在安卓开发中,以下哪个组件负责处理用户触摸屏幕的事件?A. ActivityB. ServiceC. ViewD. BroadcastReceiver二、多项选择题(本大题有10小题,每小题4分,共40分)1、下列哪些是Android开发环境中常用的编程语言?A. JavaB. KotlinC. SwiftD. C++E. Python2、关于Android中的Activity生命周期,下面描述正确的有哪些?A. Activity的生命周期指的是Activity从创建到销毁的过程B. Activity的生命周期中有三个主要方法,分别是onCreate()、onStart()、onDestroy()C. 当Activity被创建时,它会从onCreate()走到onStart(),然后到onResume(),使Activity处于活跃状态D. 当一个新的Activity启动时,原来的Activity会经历onPause()、onStop()方法E. onDestroy()方法在Activity被销毁前不会被调用3、以下哪些是Android开发中常用的布局管理器?()A. Linear LayoutB. Relative LayoutC. Frame LayoutD. Table LayoutE. GridLayout4、在Android开发中,以下哪些是用于处理异步任务的机制?()A. AsyncTaskB. ThreadPoolExecutorC. HandlerD. HandlerThreadE. IntentService5、在Android开发中,关于Activity生命周期的说法正确的是:A. 当Activity处于暂停状态时,它仍然可见但可能被遮挡。
android笔试题及答案
android笔试题及答案【篇一:android面试题带答案】>1.math.round(11.5)等于多少(). math.round(-11.5)等于多少(c)a、?? 11 ,-11b、11 ,-12c、12 ,-11d、12 ,-122下列程序段的输出结果是:(b )void complicatedexpression_r(){int x=20, y=30;boolean b;b=x50y60||x50y-60||x-50y60||x-50y-60;system.out.println(b);}a、trueb、falsec、1d、011.activity3.android 中下列属于intent的作用的是(c)a、实现应用程序间的数据共享b、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失c、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带d、处理一个应用程序整体性的工作失4 在android中使用menu时可能需要重写的方法有(ac)。
(多选)a、oncreateoptionsmenu()b、oncreatemenu()c、onoptionsitemselected()d、 onitemselected()5在android中使用sqliteopenhelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是(ab)a、getwriteabledatabase()b、getreadabledatabase()c、getdatabase()d、 getabledatabase()6 .android 关于service生命周期的oncreate()和onstart()说法正确的是(ad)(多选题)a、当第一次启动的时候先后调用oncreate()和onstart()方法b、当第一次启动的时候只会调用oncreate()方法c、如果service已经启动,将先后调用oncreate()和onstart()方法d、如果service已经启动,只会执行onstart()方法,不在执行oncreate()方法 7我们都知道hanlder是线程与activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是(a)a、ondestroy()b、onclear()c、onfinish()d、 onstop()8关于res/raw目录说法正确的是(a)a、这里的文件是原封不动的存储到设备上不会转换为二进制的格式b、这里的文件是原封不动的存储到设备上会转换为二进制的格式c、这里的文件最终以二进制的格式存储到指定的包中d、这里的文件最终不会以二进制的格式存储到指定的包中二.填空题1. android中常用的四个布局是。
Android工程师笔试题及参考答案
Android工程师面试题一、基础(79分)1. String s = new String("xyz");创建了几个String Object? ( )3分A、1个B、2个C、3个D、4个2. Math.round(11.5)和Math.round(-11.5)分别等于多少?()2分A、11和-11B、12和-11C、11和-12D、12和-123.以下错误的说法有:( )2分A、只要设计合理,当出现error这样的情况时,程序完全可以自动处理B、exception 表示一种设计或实现问题4.AC5.ABCD6.ABCD7.}class?B?extends?A{static{System.out.print("a");?}?public?B(){System.out.print("b");??}}public?class?Hello{public?static?void?main(String[]?ars){?A?ab?=?new?B();??ab?=?new?B();?}}A、Xa2b2bB、Xa2bXa2bC、abX2abD、2bXaba8.2<<3=? ()3分A、8B、6C、9D、169.那些不属于面向对象的特征()2分A、多态性B、抽象C10.AC11.AC12.ABCD13.14.15.16.17.18.19.20.21.publicstaticvoidchangeStr(Stringstr){str="welcome"; ??} ??publicstaticvoid?main(String[]?args)?{ ??String?str="1234"; ??changeStr(str); ??System.out.println(str); ??} ??}??A、1234B、welcome22.以下代码的输出结果是:()4分Public class Test2 {Static boolean foo(char c) {}A. ABDCBDCBB. ABCDABCDC. Compilation fails.D. An exception is thrown at runtime.23.假设int x=4,y=50,下列语句的循环体共执行几次?( )4分while (y / x > 3) {if (y % x > 3) {x = x + 1;} else {y = y / x;}}A、1B、2C、3D、424.要从文件" file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合? 3分A、FileInputStream in=new FileInputStream("file.dat"); in.skip(9); int c=in.read();B、FileInputStream in=new FileInputStream("file.dat"); in.skip(10); int c=in.read();C、FileInputStream in=new FileInputStream("file.dat"); int c=in.read();D、RandomAccessFile in=new RandomAccessFile("file.dat"); in.skip(9); int c=in.readByte();25.下面异常是属于Runtime Exception 的是()(多选)2分A、ArithmeticExceptionB、IllegalArgumentExceptionC、NullPointerExceptionD、BufferUnderflowException26.下面在AndroidManifest.xml文件中注册BroadcastReceiver体式格式正确的()4分A、<receiver android:name="NewBroad">27.分B、当第一次启动的时辰只会调用onCreate()办法C、若是service已经启动,将先后调用onCreate()和onStart()办法D、若是service已经启动,只会履行onStart()办法,不在履行onCreate()办法28.关于SharedPreferences和文件存储数据描述正确的是( ).(选择一项) ()3分A. 使用文件存储需要创建文件,而SharedPreferences的存储方式自动创建xml文件B. 使用文件存储时,只能将文件保存在SD卡上C. 两种存储方式都可以将存储的数据共享给其他应用D. SharedPreferences一般用于保存不经常改变的参数设置29.定义广播需要重写父类中的什么方法().(选择一项) 3分A. onCreateB. onSendC. onReceiveD. onBroadcast30.下列聚合函数中不忽略空值(null) 的是()2分A. SUM (列名)B. MAX (列名)C. COUNT ( * )D. A VG (列名)31.SQL中,下列涉及空值的操作,不正确的是()2分A. AGE IS NULLB. AGE IS NOT NULLC. AGE = NULLD. NOT (AGE IS NULL)32.SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且( )2分A.包括20岁和30岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括30岁但不包括20岁33.在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是( ) 3分A、getWriteableDatabase()B、getReadableDatabase()34.35.1A.甲说真话,作案的是丙。
Android工程师综合笔试卷二
18. 下面关于Android中定义style和theme的描述正确的是? A 都可以减少重复属性设置 B style可以作用在Activity上 C theme可以继承 D 一个TextView的style中定义了textColor属性,TextView本身也设置textColor属性,那么TextView本身
13. 下列对android NDK的理解正确的是 A NDK是一系列工具的集合 B NDK 提供了一份稳定、功能有限的 API 头文件声明 C 使 “Java+C” 的开发方式终于转正,成为官方支持的开发方式 D NDK 将是 Android 平台支持 C 开发的开端
14. 有关Activity生命周期描述正确的是 A 设置Activity的android:screenOrientation="portrait"属性时,切换屏幕横纵方向时不会重新调用各个生
正在执行的代码 D 所有选项均正确 E 进程有一个Service,该Service对应的Activity正在与用户交互
4. 关于干播以下陈述正确的是( ). A 干播接收器只能在配置文件中注册 B 干播接收器注册后不能注销 C 干播接收器只能接收自定义的干播消息 D 干播接收器可以在Activity中单独注册与注销
牛客出品-
牛客网-中国最大IT笔试/面试题库
3. 遇到下列哪种情况时需要把进程移到前台? A 进程正在运行一个与用户交互的Activity ,它的onResume()方法被调用 B 进程有一正在运行的BroadcastReceiver,它的onReceive()方法正在执行 C 进程有一个Service,并且在Service的某个回调函数(onCreate()、onStart()、或onDestroy())内有
android java笔试题(带大部分答案)
请将试题答在答题卡上,不要在试卷中做任何标记一、基础题:1.请写出输出结果public class Test1 {public static void changeStr(String str){str="welcome";}public static void main(String[] args) {String str="1234";changeStr(str);System.out.println(str);}}___"1234"____________________________________________________2.请写出输出结果public class Test2 {static boolean foo(char c) {System.out.print(c);return true;}public static void main(String[] argv) {int i = 0;for (foo('A'); foo('B') && (i < 2); foo('C')) {i++;foo('D');}}}_____ABDCBDCB___________________________________________________3.class A {protected int method1(int a, int b) { return 0; }}以下A扩展类中的方法哪两个是正确的:(选择两个)A.public int method1(int a, int b) { return 0;}B.private int method1(int a, int b) { return 0;}C.private int method1(int a, long b) { return 0;}D.public short method1(int a, int b) { return 0;}E.static protected int method1(int a, int b) { return 0;}____AD___________________________________________________4.public class Outer{public void someOuterMethod() {// Line 3}public class Inner{}public static void main(String[] args) {Outer o = new Outer();// Line 8}}下列哪一个对Inner类实例化的描述是正确的?DA.new Inner(); // At line 3B.new Inner(); // At line 8C.new o.Inner(); // At line 8D.new Outer.Inner(); // At line 8//new Outer().new Inner()5.下面这个程序正确吗? 如果不正确请说出哪里错误。
安卓工程师招聘笔试题及解答(某大型国企)
招聘安卓工程师笔试题及解答(某大型国企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下关于Android系统架构的描述,正确的是:A. Android系统架构由硬件抽象层(HAL)、中间件和服务层、应用程序层组成B. Android系统架构由操作系统核心、系统服务、中间件和应用程序组成C. Android系统架构由应用框架层、应用程序层、系统服务层和硬件抽象层组成D. Android系统架构由应用程序层、中间件和服务层、操作系统核心组成2、以下关于Android开发中布局文件的描述,错误的是:A. 布局文件是XML格式的,用于定义用户界面的布局结构B. 布局文件中的元素可以是View或ViewGroupC. 布局文件可以通过Android Studio的XML Layout Designer可视化编辑D. 在布局文件中,所有的元素都需要指定宽度(width)和高度(height)3、以下哪个选项不属于Android开发中的四大组件?A、ActivityB、ServiceC、BroadcastReceiverD、ContentProvider4、以下哪个选项描述了AndroidManifest.xml文件的作用?A、存储应用的数据B、定义应用所需的权限C、记录应用安装路径D、存储应用的用户信息5、在Android中,哪一个方法是Activity生命周期的一部分,并且会在Activity 变为用户可见时调用?A. onCreate()B. onStart()C. onResume()D. onPause()6、关于Android中的Intent,以下哪个说法是正确的?A. Intent仅用于启动Activity。
B. 显式Intent指定要激活的组件名称。
C. 隐式Intent直接命名了目标组件。
D. 不能使用Intent传递数据。
7、以下关于Android Studio的说法正确的是:A. Android Studio是基于Java语言的开发环境B. Android Studio只支持开发Android应用程序C. Android Studio自带了Android虚拟机(AVD)用于测试应用D. Android Studio是Android开发的官方IDE,但不是最流行的开发工具8、以下关于AndroidManifest.xml文件的说法错误的是:A. AndroidManifest.xml文件是Android应用程序的清单文件B. AndroidManifest.xml文件中定义了应用程序的名称、版本、权限等信息C. AndroidManifest.xml文件必须放在应用程序的根目录下D. AndroidManifest.xml文件在运行时会被Android系统解析9、以下哪个选项是Android开发中用于处理用户界面事件的关键接口?A. ComponentB. ServiceC. ViewD. Intent二、多项选择题(本大题有10小题,每小题4分,共40分)1、下列哪些是Android开发中常用的布局?A. LinearLayoutB. RelativeLayoutC. AbsoluteLayoutD. TableLayoutE. ConstraintLayout2、在Android应用程序中,关于Activity生命周期的说法,下面哪些是正确的?A. Activity的生命周期是指从启动到销毁的过程。
android笔试题及其参考答案
android笔试题及其参考答案android笔试题及其参考答案身为一个安卓工程师,面试的过程中自然免不了会要遇到笔试的题目,那么该怎么顺利通过笔试呢?下面小编就给大家分享一些android笔试题及其参考答案,希望能帮助你更好的通过面试,快来看看吧!android笔试题及其参考答案在android中,请简述jni的调用过程。
1)安装和下载Cygwin,下载 Android NDK 2)在ndk项目中JNI接口的设计3)使用C/C++实现本地方法4)JNI生成动态链接库.so文件5)将动态链接库复制到java工程,在java工程中调用,运行java工程即可简述Android应用程序结构是哪些? Android 应用程序结构是:Linux Kernel(Linux内核)、Libraries(系统运行库或者是c/c++核心库)、Application Framework(开发框架包)、Applications (核心应用程序)如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态? onSaveInstanceState() 当你的程序中某一个Activity A在运行时,主动或被动地运行另一个新的Activity B,这个时候A会执行onSaveInstanceState()。
B完成以后又会来找A,这个时候就有两种情况:一是A被回收,二是A没有被回收,被回收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上了参数savedInstanceState;而没被收回的就直接执行onResume(),跳过onCreate()了。
如何将一个Activity设置成窗口的样式。
在AndroidManifest.xml 中定义Activity的地方一句话android:theme=“@android:style/Theme.Dialog”或android:theme=“@android:style/Theme.Translucent”就变成半透明的请介绍下Android中常用的五种布局。
Android工程师笔试题及答案
Android工程师面试题一、基础(79分)1. String s = new String("xyz");创建了几个String Object? ( )3分A、1个B、2个C、3个D、4个2. Math.round(11.5)和Math.round(-11.5)分别等于多少?()2分A、11和-11B、12和-11C、11和-12D、12和-123.以下错误的说法有:( )2分A、只要设计合理,当出现error这样的情况时,程序完全可以自动处理B、exception 表示一种设计或实现问题C、Set和Map都继承自Collection接口D、接口可以继承接口E、抽象类可以继承没有构造函数的实体类4. 以下哪种类型不能作为switch(expr1)表达式的expr1?( )3分A、intB、longC、charD、byte5. 有关ArrayList和Vector的说法,那些是错误的?( )3分A、Vector是线程安全的B、ArrayList是线程序不安全的C、当需要增长时,Vector默认增长为原来一培D、当需要增长时, ArrayList默认增长为原来一培6. 以下说法那些是错误的?()3分A、一个char型变量可以存储一个中文汉字B、String是最基本的数据类型C、Integer的缺省值是0D、String类提供了数值不可改变的字符串7.请指出以下代码的执行结果()5分class A{static{X");}public A(){}}class B extends A{static{}public B(){}}public class Hello{public static void main(String[] ars){A ab = new B();ab = new B();}}A、Xa2b2bB、Xa2bXa2bC、abX2abD、2bXaba8.2<<3=? ()3分A、8B、6C、9D、169.那些不属于面向对象的特征()2分A、多态性B、抽象C、继承D、重写10.若要说明一个抽象类,使用的关键字是:()2分A、staticB、implementsC、extendsD、abstract11.在Java中,要定义类的保护类型元素,则必须使用的关键字是()2分A、[default]B、privateC、publicD、protected12.下面是有关子类调用父类构造函数的描述正确的是()2分A、子类定义了自己的构造函数,就不会调用父类的构造函数B、子类必须通过super关键字调用父类没有参数的构造函数C、如果子类的构造函数没有通过super调用父类构造函数,那么子类会先调用父类不含参数的构造函数,再调用子类自己的构造函数D、创建子类对象时,先调用子类自己的构造函数,然后调用父类的构造函数13.下列选项中不属于结构化程序设计方法的是()2分14.A、自顶向下 B、逐步求精15.C、模块化 D、可复用16.下列描述中,错误的是()2分17.A、Java要求编程者管理内存18.B、Java的安全性体现在多个层次上19.C、Applet要求在支持Java的浏览器上运行20.D、Java有多线程机制21.以下代码的输出结果是:()2分publicclass Test1 {publicstaticvoid changeStr(String str){str="welcome";}publicstaticvoid main(String[] args) {String str="1234";changeStr(str);}}A、1234B、welcome22.以下代码的输出结果是:()4分Public class Test2 {Static boolean foo(char c) {return true;}Public static void main(String[] argv) {int i = 0;//for(65;88&&(i<2);67)for (foo('A'); foo('B') && (i < 2); foo('C')) { i++;foo('D');}}}A. ABDCBDCBB. ABCDABCDC. Compilation fails.D. An exception isthrown at runtime.23.假设int x=4,y=50,下列语句的循环体共执行几次?( )4分while (y / x > 3) {if (y % x > 3) {x = x + 1;} else {y = y / x;}}A、1B、2C、3D、424.要从文件" file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合?3分A、FileInputStream in=new FileInputStream("file.dat"); in.skip(9); int c=in.read();B、FileInputStream in=new FileInputStream("file.dat"); in.skip(10); int c=in.read();C、FileInputStream in=new FileInputStream("file.dat"); int c=in.read();D、RandomAccessFile in=new RandomAccessFile("file.dat"); in.skip(9); int c=in.readByte();25.下面异常是属于Runtime Exception 的是()(多选) 2分A、ArithmeticExceptionB、IllegalArgumentExceptionC、NullPointerExceptionD、BufferUnderflowException26.下面在AndroidManifest.xml文件中注册BroadcastReceiver体式格式正确的() 4分27.android 关于service生命周期的onCreate()和onStart()说法正确的是()(多选题)3分A、当第一次启动的时辰先后调用onCreate()和onStart()办法B、当第一次启动的时辰只会调用onCreate()办法C、若是service已经启动,将先后调用onCreate()和onStart()办法D、若是service已经启动,只会履行onStart()办法,不在履行onCreate()办法28.关于SharedPreferences和文件存储数据描述正确的是( ).(选择一项) () 3分A. 使用文件存储需要创建文件,而SharedPreferences的存储方式自动创建xml文件B. 使用文件存储时,只能将文件保存在SD卡上C. 两种存储方式都可以将存储的数据共享给其他应用D. SharedPreferences一般用于保存不经常改变的参数设置29.定义广播需要重写父类中的什么方法().(选择一项) 3分A. onCreateB. onSendC. onReceiveD. onBroadcast30.下列聚合函数中不忽略空值 (null) 的是()2分A. SUM (列名)B. MAX (列名)C. COUNT ( * )D. AVG (列名)31.SQL中,下列涉及空值的操作,不正确的是()2分A. AGE IS NULLB. AGE IS NOT NULLC. AGE = NULLD. NOT (AGE IS NULL)32.SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且( )2分A.包括20岁和30岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括30岁但不包括20岁33.在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是( ) 3分A、getWriteableDatabase()B、getReadableDatabase()C、getDatabase()D、getAbleDatabase()34.若用如下的SQL语句创建了一个表SCREATE TABLE S(S# CHAR(6) NOT NULL,SNAME CHAR(8) NOT NULL,SEX CHAR(2),AGE INTEGER)今向S表插入如下行时,哪一行可以被插入 3分A、('991001','李明芳',女,'23')B、('990746','张为',NULL,NULL)C、(NULL,'陈道一','男',32)D、('992345',NULL,'女',25)35.有表tb,tb有字段id(int型)、a(varchar型)、b(char型)、c(日期型)下面那些sql语句是正确的()3分A、update tb set a=’1’ where id=1B、delete tb where id=1C、select top 1 b from tb order by a descD、update table tb set a=’1’ where id=2二、逻辑部分(21分)1、某商场失窃,员工甲、乙、丙、丁涉嫌被拘审。
Android笔试题及答案
Android笔试考题注意:答案请全部写在答题纸上总分: 100分考试时间: 60 分钟一.选择题(共30分)1. 下面关于Android dvm的进程和Linux的进程,应用程序的进程说法正确的是?A.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认为是同一个概念.B.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux中的一个进程,所以说不是一个概念.C.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM 不一定都是在Linux 中的一个进程,所以说不是一个概念.D.DVM指dalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例.而每一个DVM都是在Linux 中的一个进程,所以说可以认为是同一个概念.2. 下列选项哪个不是Activity启动的方法?A.goToActivityB.startActivityC.startActivityFromChildD.startActivityForResult3. 下列关于XML布局文件在Java代码中被引用的说明中,不正确的是?A.在Activity中,可以使用findViewById( )方法,通过资源id,获得指定视图元素B.在Activity中,可以使用R.drawable-system.***方式引用Android系统所提供的图片资源C.在Activity中,可以使用setContentView( )方法,确定加载哪一个布局文件D.可以使用View类的findViewById( )方法,获得当前View对象中的某一个视图元素4. 下列关于ListView使用的描述中,不正确的是?A.要使用ListView,必须为该ListView使用Adpater方式传递数据B.要使用ListView,该布局文件对应的Activity必须继承ListActivityC.ListView中每一项的视图布局既可以使用内置的布局,也可以使用自定义的布局方式D.ListView中每一项被选中时,将会触发ListView对象的ItemClick事件5. 在android 中使用Menu 时可能需要重写的方法有?A.onOptionsItemSelected()B.onCreateOptionsMenu()C.onItemSelected()D.onCreateMenu()6. 在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是?A.getDatabase()B.getWriteableDatabase()C.getReadableDatabase()D.getAbleDatabase()7. android 关于service生命周期的onCreate()和onStart()说法正确的是?A.如果service已经启动,将先后调用onCreate()和onStart()方法B.当第一次启动的时候先后调用onCreate()和onStart()方法C.当第一次启动的时候只会调用onCreate()方法D.如果service已经启动,只会执行onStart()方法,不再执行onCreate()方法8. 下列选项中不属于GLSurFaceView特性的是?A.管理一个surface,这个surface就是一块特殊的内存,能直接排版到android的视图view上。
安卓工程师招聘笔试题及解答(某大型国企)
招聘安卓工程师笔试题及解答(某大型国企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、题干:以下哪个是Android开发中最常用的布局管理器?A、RelativeLayoutB、LinearLayoutC、FrameLayoutD、TableLayout答案:B解析:LinearLayout是Android中最常用的布局管理器之一,它允许子视图在水平或垂直方向上排列。
LinearLayout的子视图会按照添加顺序依次排列。
2、题干:在Android中,以下哪个方法用于获取当前Activity的实例?A、getApplicationContext()B、getSystemService(Context.ACTIVITY_SERVICE)C、getCurrentFocus()D、getActivity()答案:D解析:在Android中,getActivity()方法通常用于获取当前Activity的实例。
这个方法可以在Fragment中使用,以便访问宿主Activity的方法和属性。
getApplicationContext()返回应用上下文,getSystemService(Context.ACTIVITY_SERVICE)用于获取系统服务,而getCurrentFocus()返回当前获取焦点的视图。
3、以下哪个不属于Android系统中的四大组件?A、ActivityB、ServiceC、BroadcastReceiverD、ContentProvider答案:D解析:Android系统中的四大组件分别为Activity(活动)、Service(服务)、BroadcastReceiver(广播接收器)和ContentProvider(内容提供者)。
D选项ContentProvider不属于四大组件之一。
它主要用于应用程序之间的数据共享。
4、在Android开发中,以下哪个类负责创建和管理UI元素?A、ContextB、ActivityC、ViewD、Window答案:C解析:在Android开发中,View类是UI元素的基础类,负责创建和管理UI元素。
Android笔试题带答案.docx
Android笔试题大全1 •请解释下在单线程模型中Message,Handler,Message Queue丄ooper 之间的关系。
1>拿主线程来说,主线程启动时会调用Looper.prepare()方法,会初始化一个Looper,放入Threadlocal 中接着调用Looper.loop()不断遍历Message Queue。
2、H andler的创建依赖与当前线程中的Looper,如果当前线程没有Looper则必须调用Looper.prepare()o3、H andler 通过调用sendl\/lessage()方法讲消息放入MessageQueue 中,MessageQueue是一个先进先岀的队列,Looper不断从MessageQueue中取岀消息,把消息交给消息对应的Handler对象进行分发处理。
2•内存溢出和内存泄漏有什么区別?何时会产生内存泄漏?内存优化有哪些方法?1、内存溢出通俗理解就是软件(应用)运行需要的内存,超出了它可用的最大内存。
2、内存泄漏就是我们对某一内存空间的使用,使用完成后没有释放。
3、内存优化:Android中容易内存溢出的部分,就是图片的加载,我们可以使用对图片的压缩并且使用LruCache缓存的目的来控制图片所能够使用的内存。
对比较耗资源的对象及时的关闭,例如Database Conn ,流对象,游标,各种传感器, Service 寺寺。
3.AsyncTask使用在哪些场景?它的缺陷是什么?如何解决?1、A syncTask运用的场景就是我们需要进行一些耗时的操作,耗时操作完成后更新主线程,或者在操作过程中对主线程的UI进行更新。
2、缺陷:AsyncTask中维护着一个长度为128的线程池,同时可以执行5个工作线程,还有一个缓冲队列,当线程池屮已有128个线程,缓冲队列已满时,此时如果仍然向线程提交任务,将会抛出RejectedExecutionExceptiono3、解决:由一个控制线程来处理AsyncTask的调用判断线程池是否满了,如果满了则线程睡眠否则请求AsyncTask继续处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.Android 工程师面试题一、基础( 79 分)1.String s = new String("xyz");创建了几个 String Object? ( )3分A、 1 个B、 2 个C、 3 个D、 4 个2.Math.round(11.5) 和 Math.round(-11.5)分别等于多少?() 2分A、 11 和 -11B、 12 和 -11C、 11 和 -12D、 12 和 -123.以下错误的说法有: ( )2 分A 、只要设计合理,当出现error这样的情况时,程序完全可以自动处理B 、 exception表示一种设计或实现问题C 、 Set 和 Map都继承自Collection接口D、接口可以继承接口E、抽象类可以继承没有构造函数的实体类4. 以下哪种类型不能作为switch ( expr1 )表达式的expr1 ? ( )3分A、intB、longC 、 char D、byte5. 有关 ArrayList和Vector的说法,那些是错误的?( )3分A、 Vector 是线程安全的B、 ArrayList 是线程序不安全的C、当需要增长时 ,Vector 默认增长为原来一培D、当需要增长时 , ArrayList默认增长为原来一培6. 以下说法那些是错误的?()3分A、一个char型变量可以存储一个中文汉字B、 String 是最基本的数据类型C、 Integer 的缺省值是 0D、 String 类提供了数值不可改变的字符串7. 请指出以下代码的执行结果() 5 分class A{static{System.out.print("X");}public A(){System.out.print("2");}}class Bextends A{static{System.out.print("a");}public B(){System.out.print("b");}}public class Hello{public static void main(String[]ars){.A ab = new B();ab = new B();}}A、 Xa2b2bB、Xa2bXa2bC、 abX2abD、2bXaba8. 2<<3=? () 3 分A、 8B、6C、 9D、169. 那些不属于面向对象的特征() 2 分A 、多态性B、抽象C 、继承D、重写10.若要说明一个抽象类,使用的关键字是:()2分A 、 static B、implementsC 、 extends D、abstract11.在Java中,要定义类的保护类型元素,则必须使用的关键字是()2分A、 [default]B、privateC 、 public D、protected12.下面是有关子类调用父类构造函数的描述正确的是()2分A、子类定义了自己的构造函数,就不会调用父类的构造函数B、子类必须通过super 关键字调用父类没有参数的构造函数C、如果子类的构造函数没有通过super调用父类构造函数,那么子类会先调用父类不含参数的构造函数,再调用子类自己的构造函数D、创建子类对象时,先调用子类自己的构造函数,然后调用父类的构造函数13.下列选项中不属于结构化程序设计方法的是()2分A、自顶向下B、逐步求精C、模块化D、可复用14.下列描述中,错误的是()2分A、 Java 要求编程者管理内存B、 Java 的安全性体现在多个层次上C、 Applet要求在支持Java 的浏览器上运行D、 Java 有多线程机制15.以下代码的输出结果是:()2 分publicclass Test1{publicstaticvoid changeStr(String str){str="welcome";}publicstaticvoid main(String[]args){String str="1234";changeStr(str);.System.out.println(str);}}A、 1234B、welcome16.以下代码的输出结果是:() 4 分Public class Test2 {Static boolean foo(char c) {System.out.print(c);return true;}Public static void main(String[] argv) {int i = 0;//for(65;88&&(i<2);67)for (foo('A'); foo('B') && (i < 2); foo('C')) {i++;foo('D');}}}A. ABDCBDCBB. ABCDABCDC. Compilation fails.D. An exception is thrown at runtime.17. 假设 int x=4,y=50,下列语句的循环体共执行几次?( )4 分while (y / x > 3) {if (y % x > 3) {x = x + 1;} else {y = y / x;}}A、 1B、 2.C、 3D、418.要从文件 " file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合? 3分A、 FileInputStream in=new FileInputStream("file.dat"); in.skip(9); int c=in.read();B、 FileInputStream in=new FileInputStream("file.dat"); in.skip(10); int c=in.read();C、 FileInputStream in=new FileInputStream("file.dat"); int c=in.read();D、 RandomAccessFile in=new RandomAccessFile("file.dat"); in.skip(9); int c=in.readByte();19. 下面异常是属于 Runtime Exception的是()(多选) 2 分A、 ArithmeticExceptionB、 IllegalArgumentExceptionC、 NullPointerExceptionD、 BufferUnderflowException20. 下面在 AndroidManifest.xml文件中注册 BroadcastReceiver体式格式正确的() 4 分A、 <receiver android:name="NewBroad"><intent-filter><actionandroid:name="android.provider.action.NewBroad"/><action></intent-filter></receiver>B、 <receiver android:name="NewBroad"><intent-filter>android:name="android.provider.action.NewBroad"/></intent-filter></receiver>C、 <receiver android:name="NewBroad"><actionandroid:name="android.provider.action.NewBroad"/><action></receiver>D、 <intent-filter><receiver android:name="NewBroad"><action>android:name="android.provider.action.NewBroad"/><action></receiver></intent-filter>21.android 关于 service 生命周期的 onCreate ()和 onStart ()说法正确的是()(多选题) 3 分A 、当第一次启动的时辰先后调用onCreate ()和 onStart ()办法B、当第一次启动的时辰只会调用onCreate ()办法C、若是 service已经启动,将先后调用onCreate ()和 onStart()办法D、若是 service已经启动,只会履行onStart ()办法,不在履行onCreate ()办法22.关于 SharedPreferences 和文件存储数据描述正确的是( ).( 选择一项 ) () 3分A. 使用文件存储需要创建文件, 而 SharedPreferences的存储方式自动创建 xml 文件B.使用文件存储时 , 只能将文件保存在 SD卡上C.两种存储方式都可以将存储的数据共享给其他应用D. SharedPreferences一般用于保存不经常改变的参数设置23.定义广播需要重写父类中的什么方法().( 选择一项 ) 3 分A.onCreateB. onSendC. onReceiveD. onBroadcast..24.下列聚合函数中不忽略空值(null)的是() 2分A. SUM ( 列名 )B. MAX (列名 )C. COUNT ( * )D. AVG (列名 )25.SQL中,下列涉及空值的操作,不正确的是() 2 分A. AGE IS NULLB. AGE IS NOT NULLC. AGE = NULLD. NOT (AGE IS NULL)26.SQL语言中,条件“年龄 BETWEEN 20 AND 30”表示年龄在 20 至 30 之间,且( )2分A. 包括 20岁和 30 岁 B.不包括 20 岁和 30 岁C. 包括 20岁但不包括 30 岁D.包括 30 岁但不包括 20岁27.在 android 中使用 SQLiteOpenHelper 这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是() 3分A、 getWriteableDatabase()B、getReadableDatabase()C、 getDatabase()D、getAbleDatabase()28.若用如下的 SQL语句创建了一个表 SCREATE TABLE S(S# CHAR(6) NOT NULL,SNAME CHAR(8) NOT NULL,SEX CHAR(2),AGE INTEGER)今向 S 表插入如下行时,哪一行可以被插入 3 分A、 ('991001','李明芳',女,'23')B、 ('990746','张为',NULL,NULL)C、 (NULL,' 陈道一 ' , ' 男',32)D、 ('992345',NULL,'女',25)29.有表tb,tb有字段id(int型)、a(varchar型)、b(char型)、c(日期型)下面那些sql 语句是正确的() 3 分A、 update tb set a=’1’where id=1B、 delete tb where id=1C、 select top 1 b from tb order by a descD、 update table tb set a=’1’where id=2二、逻辑部分(21 分)1、某商场失窃,员工甲、乙、丙、丁涉嫌被拘审。