android笔试题及答案

合集下载

android笔试题及答案

android笔试题及答案

单选题中可以用来处理中警示,确认等对话框地是().假设目录下有文件结构,用()方法将该网页加载至时,需传入地参数是().....下列不属于补间动画相关类地是()中网络互连中需要获取状态码,根据状态码来判断请求是否已经完成,下列状态码表示请求完成地是().关于说法错误地是:()里可以通过设定转换时候地透明位.在使用一个之前,不一定要调用方法是设置资源被读入到这个地时候动画效果是资源文件从这个里消失地时候要实现地动画效果.建立蓝牙连接时通过方法来获取对象()(); ();. ().关于地说法不正确地是( ).它实现不同进程间通信地一种机制.它避免了在新线程中刷新地操作.它采用队列地方式来存储.它实现不同线程间通信地一种机制8.和地主要区别是():. 内部基于链表,而是基于数组地. 地大部分方法做了同步,而没有同步. 是可串行化地,而不是. 实现了,而没有.下列属于解析文件地优点地是().将整个文档输在内存中,便于操作,支持删除,修改,重新排列等多种功能.不用事先调入整个文档,占用资源少.整个文档调入内存,浪费时间和空间.不是长久驻留在内存,数据不是持久地,事件过后,若没有保存数据,数据就会消失""; ""; ""; 总共创建( )个对象.多选题.在添加第一个窗口小部件时,会执行地方法是().下列属于优点地是()与编程语言无关. 可以使用任何语言来完成是完全和厂商无关. 与平台无关是简单地,可扩展地3.下列属于解析需要用到地类和接口是()A..在使用蓝牙必须获取地权限是().< "">.< "" >.< ""> .< "">5.类地重要方法()简答题1.是什么?如何避免?当程序需要申请一段“大”内存,但是虚拟机没有办法及时地给到,即使做了操作以后这就会抛出也就是避免:)减少内存对象地占用代替.避免在里面使用.减少地内存占用.减少资源图片地大小,过大地图片可以考虑分段加载内存对象地重复利用)大多数对象地复用,都是利用对象池地技术.地复用属性对于内存对象地复用这个方法在某些条件下非常有用,比如要加载上千张图片地时候..避免在方法里面对象代替地区别地更新必须在中进行会单独有一个线程做地更新.支持绘制.3.什么时候会发生内存泄露?内存泄露地根本原因?长生命周期地对象持有短生命周期地对象.短周期对象就无法及时释放.. 静态集合类引起内存泄露方法无法删除集 (, );. 我们在使用监听器地时候,往往是,但是当我们不需要地时候,忘记,就容易内存..各种数据链接没有关闭,数据库,,等..内部类:中地内部类(匿名内部类),会持有宿主类地强引用.所以如果是这种,后台线程地操作,当线程没有执行结束时,不会被回收.地引用,当等等都会持有上下文地引用.如果有,就会导致该内存无法释放..单例单例是一个全局地静态对象,当持有某个复制地类是,无法被释放,内存..横竖屏切换时地生命周期切换时地生命周期跟清单文件里地配置有关系.不设置地时,切屏会重新调用各个生命周期默认首先销毁当前,然后重新加载.设置 ""时,切屏不会重新调用各个生命周期,只会执行方法.通常在游戏开发, 屏幕地朝向都是写死地.机制地原理提供了和来满足线程间地通信. 先进先出原则.类用来管理特定线程内对象之间地消息交换( ).): 一个线程可以产生一个对象,由它来管理此线程里地(消息队列).): 你可以构造对象来与沟通,以便新消息到里;或者接收从取出)所送来地消息.) (消息队列):用来存放线程放入地消息.)线程:通常就是,而启动程序时会替它建立一个.。

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考试题及答案

android考试题及答案一、单选题(每题2分,共20分)1. Android操作系统是基于哪个内核开发的?A. Windows内核B. Linux内核C. Unix内核D. MacOS内核答案:B2. 在Android中,哪个类是所有Activity的父类?A. ViewB. ContextC. ObjectD. Activity答案:D3. 下列哪个不是Android四大组件之一?A. ActivityB. ServiceC. BroadcastReceiverD. DataProvider答案:D4. Android中,用于处理用户界面的XML文件存放在哪个目录下?A. /res/valuesB. /res/drawableC. /res/layoutD. /res/menu答案:C5. 在Android开发中,哪个权限是用于访问网络的?A. android.permission.INTERNETB. android.permission.ACCESS_FINE_LOCATIONC. android.permission.READ_PHONE_STATED. android.permission.WRITE_EXTERNAL_STORAGE答案:A6. Android中,Intent的主要用途是什么?A. 启动一个新的ActivityB. 处理网络请求C. 访问数据库D. 绘制图形界面答案:A7. 下列哪个不是Android支持的屏幕尺寸单位?A. dp(密度无关像素)B. sp(缩放无关像素)C. px(像素)D. in(英寸)答案:B8. 在Android中,用于存储少量数据的轻量级数据库是?A. SQLiteB. SharedPreferencesC. RealmD. Firebase答案:B9. Android中,哪个类提供了访问设备硬件特性和功能的方法?A. ContextB. ActivityC. ViewD. Application答案:A10. 在Android开发中,下列哪个不是布局文件?A. LinearLayoutB. RelativeLayoutC. ConstraintLayoutD. TextView答案:D二、多选题(每题3分,共15分)1. Android支持的屏幕尺寸单位包括哪些?A. dpB. spC. pxD. in答案:A, C, D2. 下列哪些是Android四大组件?A. ActivityB. ServiceC. BroadcastReceiverD. ContentProvider答案:A, B, C, D3. 在Android中,Intent可以用于哪些操作?A. 启动ActivityB. 启动ServiceC. 发送广播D. 访问数据库答案:A, B, C4. Android中,哪些文件用于定义应用的界面?A. XML文件B. Java文件C. HTML文件D. CSS文件答案:A, B5. Android中,哪些是常用的数据存储方式?A. SharedPreferencesB. SQLite数据库C. 文件存储D. 网络存储答案:A, B, C三、判断题(每题1分,共10分)1. Android操作系统是基于Linux内核开发的。

android笔试题及其参考答案

android笔试题及其参考答案

android笔试题及其参考答案android笔试题及其参考答案身为一个安卓工程师,面试的过程中自然免不了会要遇到笔试的题目,那么该怎么顺利通过笔试呢?下面小编就给大家分享一些android笔试题及其参考答案,希望能帮助你更好的通过面试,快来看看吧!android笔试题及其参考答案在android中,请简述jni的调用过程。

1)安装和下载Cygwin,下载 Android NDK2)在ndk项目中JNI接口的设计3)使用C/C++实现本地方法4)JNI生成动态链接库.so文件5)将动态链接库复制到java工程,在java工程中调用,运行java 工程即可简述Android应用程序结构是哪些?Android应用程序结构是:Linux Kernel(Linux内核)、Libraries(系统运行库或者是c/c++核心库)、ApplicationFramework(开发框架包)、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开发笔试题及答案

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 笔试题及答案

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中,并且可以独立地管理自己的生命周期。

Android笔试基础题以及面试题.

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)。

安卓笔试题及答案

安卓笔试题及答案

安卓笔试题及答案一、单选题1. 安卓操作系统是基于哪个内核开发的?A. Windows内核B. Linux内核C. MacOS内核D. FreeBSD内核答案:B2. 下列哪个不是安卓应用开发中常用的布局?A. LinearLayoutB. RelativeLayoutC. ConstraintLayoutD. GridBagLayout答案:D3. 在安卓开发中,哪个类是所有Activity的基类?A. ActivityB. ContextC. ViewD. Application答案:A4. 以下哪个不是安卓开发中常用的数据存储方式?A. SharedPreferencesB. SQLite数据库C. File存储D. XML文件答案:D二、多选题1. 安卓应用开发中,以下哪些是常用的网络请求库?A. RetrofitB. VolleyC. OkHttpD. Picasso答案:ABC2. 在安卓开发中,下列哪些是Activity生命周期中的方法?A. onCreate()B. onStart()C. onResume()D. onPause()答案:ABCD三、判断题1. AndroidManifest.xml文件是安卓应用的配置文件,用于定义应用的组件和权限。

答案:正确2. 在安卓开发中,所有的Activity都必须继承自Activity类。

答案:正确3. Android Studio是谷歌官方推荐的安卓开发IDE。

答案:正确4. 安卓应用的最小SDK版本可以在build.gradle文件中设置。

答案:正确四、简答题1. 请简述安卓应用开发中Activity和Fragment的区别。

答案:Activity是安卓应用的四大组件之一,它提供了一个用户界面,用户可以与之交互。

Fragment是Activity的一部分,它可以被添加到Activity中,用来管理用户界面的一部分。

Fragment可以被重复使用,并且可以在不同的Activity之间共享。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单选题
中可以用来处理js中警示,确认等对话框的是(C)
2.假设assets目录下有文件结构html/,用loadUrl()方法将该网页加载至 webView 时,需传入的参数是(B)
A.
B.
C.
D.
3.下列不属于补间动画相关类的是(B)
中网络互连中需要获取状态码,根据状态码来判断请求是否已经完成,下列状
态码表示请求完成的是(D)
5.关于ImageSwitcher 说法错误的是:( B )
里可以通过Alpha设定转换时候的透明位
B.在使用一个ImageSwitcher之前,不一定要调用setFactory方法
是设置资源被读入到这个ImageSwitcher的时候动画效果
是资源文件从这个ImageSwitcher里消失的时候要实现的动画效果
6.建立蓝牙连接时通过_D_方法来获取BluetoothAdapter对象
D. ()
7.关于Handler的说法不正确的是( A )
A.它实现不同进程间通信的一种机制
B.它避免了在新线程中刷新UI的操作
C.它采用队列的方式来存储Message
D.它实现不同线程间通信的一种机制
8.Vector和ArrayList的主要区别是(B):
A. ArrayList内部基于链表,而Vector是基于数组的
B. Vector的大部分方法做了同步,而ArrayList没有同步
C. Vector是可串行化的,而ArrayList不是
D. Vector实现了RandomAccess,而ArrayList没有
9.下列属于SAX解析xml文件的优点的是(B )
A.将整个文档输在内存中,便于操作,支持删除,修改,重新排列等多种功能
B.不用事先调入整个文档,占用资源少
C.整个文档调入内存,浪费时间和空间
D.不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会消失
a1="abc"; String a2="abc"; String a3="abcd"; 总共创建( A )个String对象。

多选题
1.在添加第一个appwidget窗口小部件时,会执行的方法是(ABD)
2.下列属于SOAP优点的是(ABCD)
A,SOAP 与编程语言无关。

SOAP 可以使用任何语言来完成 B,SOAP 是完全和厂商无关。

C,SOAP 与平台无关D,SOAP 是简单的,可扩展的
3.下列属于SAX解析XML需要用到的类和接口是(BCD)
A.DocumentBuilder
4.在使用蓝牙必须获取的权限是(AD)
5.Chronometer类的重要方法(ABC)
简答题
1.oom是什么如何避免
当程序需要申请一段“大”内存,但是虚拟机没有办法及时的给到,即使做了GC操作以后这就会抛出OutOfMemoryException 也就是OOM
避免:
1)减少内存对象的占用
SparseArray代替hashmap
II.避免在android里面使用Enum
III.减少bitmap的内存占用
IV.减少资源图片的大小,过大的图片可以考虑分段加载
内存对象的重复利用
2)大多数对象的复用,都是利用对象池的技术。

gridview/recycleview contentview的复用
属性对于内存对象的复用ARGB_8888/RBG_565/ARGB_4444/ALPHA_8
这个方法在某些条件下非常有用,比如要加载上千张图片的时候。

III.避免在ondraw方法里面 new对象
代替 +
& View 的区别
view的更新必须在UI thread中进行
surfaceview会单独有一个线程做ui的更新。

surfaceview 支持open GL绘制。

3.什么时候会发生内存泄露内存泄露的根本原因
长生命周期的对象持有短生命周期的对象。

短周期对象就无法及时释放。

I. 静态集合类引起内存泄露
方法无法删除set集(firstName, lastName);
III. observer 我们在使用监听器的时候,往往是addxxxlistener,但是当我们不需要的时候,忘记removexxxlistener,就容易内存leak。

IV.各种数据链接没有关闭,数据库contentprovider,io,sokect等。

cursor
V.内部类:
java中的内部类(匿名内部类),会持有宿主类的强引用this。

所以如果是new Thread这种,后台线程的操作,当线程没有执行结束时,activity不会被回收。

Context的引用,当TextView 等等都会持有上下文的引用。

如果有static drawable,就会导致该内存无法释放。

VI.单例
单例是一个全局的静态对象,当持有某个复制的类A是,A无法被释放,内存leak。

4.横竖屏切换时Activity的生命周期
切换时的生命周期跟清单文件里的配置有关系。

不设置Activity的android:configChanges时,切屏会重新调用各个生命周期默认首先销毁当前activity,然后重新加载。

设置Activity android:configChanges="orientation|keyboardHidden|screenSize"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法。

通常在游戏开发, 屏幕的朝向都是写死的。

机制的原理
andriod提供了 Handler 和 Looper 来满足线程间的通信。

Handler 先进先出原则。

Looper类用来管理特定线程内对象之间的消息交换(Message Exchange)。

1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的Message Queue(消息队列)。

2)Handler: 你可以构造Handler对象来与Looper沟通,以便push新消息到Message Queue里;或者接收Looper从Message Queue取出)所送来的消息。

3) Message Queue(消息队列):用来存放线程放入的消息。

4)线程:UI thread 通常就是main thread,而Android启动程序时会替它建立一个Message Queue。

相关文档
最新文档