习题二
一、选择题(15*3=45)
1、下列哪项不是Android四大组件 ( )
A.Seivice B. Activity C. Handler D. ContentProvider
2、Android是如何组织Activity的( )
A. 以堆的方式组织Activity B.以栈的方式组织Activity
C. 以树形方式组织Activity D. 以链式方式组织Activity
3、关于线程说法不正确的是 ( )
A. 在 android 中,我们可以在主线程中,创建一个新的线程
B. 在创建的新线程中,它可以操作 UI 组件
C. 新线程可以和 Handler 共同使用
D. 创建的 Handler 对象,它隶属于创建它的线程
4、下列关于内存回收的说明,哪个是正确的 ( )
A. 程序员必须创建一个线程来释放内存
B. 内存回收程序负责释放无用内存
C. 内存回收程序允许程序员直接释放内存
D. 内存回收程序可以在指定的时间释放内存对象
5、设置xml布局文件中的字体大小一般用什么单位 ( )
A. dpB. px C. sp D. pt
6、关于service生命周期的onCreate()和onStart()说法正确的是 ( )
A. 当第一次启动的时候先后调用onCreate()和onStart()方法
B. 当第一次启动的时候只会调用onCreate()方法
C. 如果service已经启动,将先后调用onCreate()和onStart()方法
D. 如果service已经启动,只会执行onStart()方法,不再执行onCreate()方法
7、Android项目工程下面的assets目录,以下说法正确的是 ( )
A. 这里的文件是原封不动的存储到设备上不会转换为二进制的格式
B. 主要放置多媒体等数据文件
C. 主要放置图片文件
D. 放置字符串,颜色,数组等常量数据
8、在android中使用SQLiteOpenHelper这个辅助类,生成一个可操作的数据库,调用的方法是( )
A.getReadableDatabase()B.getDatabase()
C.getEnbleDatabase()D.createDateBase()
9、Activity从可见状态变为半透明遮盖状态时,生命周期中哪个方法被调用( )
A.onStop() B. onPause() C. onRestart() D.onStart()
10、下面哪个选项不是AdapterView的子类 ( )
A.ListView B. GridView C. ScrollView D.Spinner
11、下面对自定义style的方式正确的是 ( )
A.
B.
C.
D.
12、ScrollView可以有几个子view ( )
A. 1个 B. 2个 C.3个 D.无限制
13、Math.round(11.5)和Math.round(-11.5)的值分别是 ( )
A. 12 -11 B. 11 -11 C. 12 -12 D.11 -12
14、关于 BroadcastReceiver 的说法不正确的是 ( )
A. 是用来接收广播 Intent 的
B. 一个广播Intent 只能被一个订阅了此广播的 BroadcastReceiver 所接收
C. 对有序广播,系统会根据接收者声明的优先级别按顺序逐个执行接收者
D. 接收者声明的优先级别在的 android:priority 属性中声明,数值越大优先级别越高
15、关于ContenValues类说法正确的是 ( )
A. 它和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值都是基本类型
B. 它和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是任意类型,而值都是基本类型
C. 它和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名,可以为空,而值都是String类型
D. 它和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是String类型,而值也是String类型
简答
1.对比简述一下Activity和Fragment的生命周期。
1.启动activity时,系统会先调用onCreate方法然后调用onstart方法然后在调用断 onResume方法这时activity进入运行状态
当一个activity被另外一个activity覆盖时系统会调用onpause方法进入后台挂起 当Activity被覆盖状态变为回到获得焦点状态系统会调用onResume方法;activity进入运行状态
当Activity进入到另一个Activity时当前Activity进入到后台,系统会先调用onpause然后调 用onStop方法;进入停止状态当用户在次回到这个activity时会先调用onRestart->onstart-onResume->进入运行状态;
用户退出当前Activity:系统先调用onPause方法,然后调用onStop方法,最后调用onDestory方法,结束当前Activity。
Oncreate是系统创建frgment时调用跟activity的oncreate一样;
oncreateView是用户首次绘制界面的时候调用返回的是一个view,
Onpause是用户离开这个frgment时调用,如果下次还要进入则会再次调用oncreateView;
2.Android软件框架结构自上而下可分为哪些层?
2 应用程序(Application)、应用程序框架(Application Framework)、各种库(Libraries)和Android运行环境(RunTime)、操作系统层(OS)
应用程序是用Java语言编写的运行在虚拟机上的程序,如E-mail客户端、日历、地图等;
应用程序架构是编写Google发布的核心应用时所使用的API框架,开发人员同样可以使用这些框架来开发自己的应用,这样便简化了程序开发的架构设计,但是必须遵守其框架的开发原则。如Activity Manager、Window Manager、View System等。
3.Android支持哪几种数据存储方式?并分别说明
3.a.SharedPreferences方式
b.文件存储方式
c.SQLite数据库方式 e. 网络存储方式
SharedPreferences主要用于存储配置信息,类似windows中的inf文件,格式是xml的。SharedPreferences是一个轻量级的存储策略,和应用程序是属于从属关系
文件存储与其他平台一样,Java基础课中都讲过
数据库使用SQLite来存放数据
SQLite数据库是移动数据库,轻量级的,IOS,Android都是使用这种数据库作为存储策略;
虽然SQLite是轻量级的移动数据库,但是性能非常高(远高于Oracle); SQLite和传统数据库相比最大不同点就是不存在服务器和客户端的概念,Android系统自带了SQLite,所以也不需要安装;
SQLite数据库的操作上更类似文件操作,而非传统的客户端服务器操作模式
云存储其实就是提交数据给服务器去存放
4.简述Activity和Intent、IntentFilter的作用,以及它们之间的关系
4.Activity作用:向用户呈现操作界面,与用户交互
Intent作用:启动另一个Activity,传递数据
IntentFilter作用:可以帮助Activity跨应用调用,可以对Activity进行功能分组
5.安卓画图相关的主要有哪3个类?各自作用?
5.1) Color :颜色对象,相当于现实生活中的‘调料’
2)Paint : 画笔对象,相当于现实生活中画图用的 ‘笔’————主要的还是对‘画笔’进行设置
3)Canvas : 画布对象,相当于现实生活中画图用的 ‘纸 或 布’
三者相结合,就能画出基本的图形
6.Android中有哪些Adapter(至少写出5种)?Adapter作用是什么?
6.Adapter是连接后端数据和前端显示的接口。BaseAdapter、ArrayAdapter、SimpleAdapter、CursorAdapter、SimpleCursorAdapter等等。
7.Android中GC什么时候会出现内存泄露?
7.在使用cursor后没有及时关闭。
在使用Bitmap对象不使用时,没有采用Recycle()来释放。
Activity中对象的生命周期大于Activity的生命周期。
构造Adapter时,没有使用缓存contentview。
更多相关文章
- Android中查看CPU和内存
- Android(安卓)Suspend/resume 过程分析.
- Activity切换导致的onCreate重复执行[转]
- android 创建bitmap的多种方式
- android activity向fragment通信,获取fragment的三种方法
- Android底层开发Led控制实验
- Android读取Assert文件夹下txt文本并变为String的方法
- [置顶] Android中的观察者DataSetObservable和DataSetObserver
- Android异步加载