android期末测试题(附带答案).docx
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题
1、下列哪项不是Android 四大组件(C)
A. Seivice
B. Activity
C. Handler
D. Content Provider
2、Android 是如何组织Activity 的(B)
A. 以堆的方式组织Activity
B. 以栈的方式组织Activity
C. 以树形方式组织Activity
D. 以链式方式组织Activity
3、关于线程说法不正确的是
( B )
A. 在 android中,我们可以在主线程中,创建一个新的线程
B. 在创建的新线程中,它可以操作UI 组件
C. 新线程可以和Handler共同使用
D. 创建的Handler 对象,它隶属于创建它的线程
4、下列关于内存回收的说明,哪个是正确的
(B)
A.程序员必须创建一个线程来释放内存
B.内存回收程序负责释放无用内存
C.内存回收程序允许程序员直接释放内存
D.内存回收程序可以在指定的时间释放内存对象
5、设置xml布局文件中的字体大小一般用什么单位
( c )
A. dp
B. px
C. sp
D. pt
6、关于 service 生命周期的onCreate()和 onStart() 说法正确的是( D )
A. 当第一次启动的时候先后调用onCreate()和 onStart() 方法
B. 当第一次启动的时候只会调用onCreate() 方法
C. 如果 service 已经启动,将先后调用onCreate() 和 onStart() 方法
D. 如果 service 已经启动,只会执行onStart() 方法,不再执行onCreate()方法
7、Android 项目工程下面的assets 目录,以下说法正确的是(A)
A.这里的文件是原封不动的存储到设备上不会转换为二进制的格式
B.主要放置多媒体等数据文件
C.主要放置图片文件
D.放置字符串,颜色,数组等常量数据
8、在 android 中使用 SQLiteOpenHelper 这个辅助类,生成一个可操作的数据库,调用的方
法是( A )
A.getReadableDatabase()()
()()
9、Activity 从可见状态变为半透明遮盖状态时,生命周期中哪个方法被调用(B)
A. onStop()
B. onPause()
C. onRestart()()
10、下面哪个选项不是AdapterView的子类(c)
A. ListView
B. GridView
C. ScrollView
11、下面对自定义style的方式正确的是(D)
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>
12、 ScrollView 可以有几个子view(A)
A. 1 个
B. 2 个个 D.无限制
13、和的值分别是( A )
A. 12 -11
B. 11-11
C. 12-12
D. 11-12
14、关于BroadcastReceiver 的说法不正确的是(B)
A. 是用来接收广播Intent的
B. 一个广播Intent只能被一个订阅了此广播的BroadcastReceiver 所接收
C.对有序广播,系统会根据接收者声明的优先级别按顺序逐个执行接收者
D. 接收者声明的优先级别在的android:priority属性中声明,数值越大优先级别越高
15、关于ContenValues类说法正确的是(A)
A. 它和Hashtable 比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是
String 类型,而值都是基本类型
B. 它和 Hashtable 比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是任
意类型,而值都是基本类型
C. 它和 Hashtable 比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名,可
以为空,而值都是String 类型
D. 它和Hashtable 比较类似,也是负责存储一些名值对,但是他存储的名值对当中的名是
String 类型,而值也是String 类型
二、填空题
1. Android 中 Service 的实现方法是或。
2.当启动一个Activity并且新的Activity执行完后需要返回到启动它的Activity来执行的回调函数是finish ()。
3. android 中常用的四个布局是LinearLayout、AbsoluteLayout、
RelativeLayout、FrameLayout。
4.包中的InputStream和OutputStream类主要用于对对象(Object) 的读写。
5. RadioGroup 的选中状态监听接口是OnCheckedChangeListener。
三、编程简述题
1.用代码实现 float 的四舍五入,得到 int 型整数。
public static int floatToint( float num){
int a=0;
if(num>0){
a=(int ) ((num*10+5)/10);
}else if (num<0){
a=(int ) ((num*10-5)/10);
}
else a=0;
return a;
}
2.简述 Android 触屏事件的处理。
用户的交互是通过事件驱动进行人机交互的在android 中常用的事件按下、弹起、移动、双击、长按、滑动。
在android 中所有的控件和Activity 都间接或直接的继承view, 一个 View 对象可以处理测距、布局、绘制、焦点变换、滚动条,以及触屏区域自己表现的按键和手势,
因为我们的view 是继承了surfaceView ,surfaceView 又是继承 view 所以要实现简单的触摸
屏事件,只需要重写父类view 里面的 onTouchEvent 方法就可以实现简单的触屏屏事件了
3. Class A有 date 日期和time时间两个属性,要求按照日期和时间对List<A> list 进行排序,
写出排序代码。
(先按日期排,日期相同的再按时间排)。
class B implements Comparator<Object>{
public int compare(Object obj1,Object obj2) {
A a=(A) obj1;
A b=(A) obj2;
return ()pareTo());
}
}
class A{
private String date;
private String timer;
private String no;
public String getNo() {
return no;
}
public void setNo(String no) {
= no;
}
public String getDate() {
return date;
}
public void setDate(String date) {
= date;
}
public String getTimer() {
return timer;
}
public void setTimer(String timer) {
= timer;
}
@Override
public String toString() {
return "A [date=" + date + ", timer=" + timer + ", no=" + no + "]";
}
}
public static void sort(){
List<A>list=new ArrayList<A>();
A a=new A();
("1");
("2015-01-01");
("11:23:51");
(a);
A a1=new A();
("2");
("2014-05-01");
("11:22:51");
(a1);
A a2=new A();
("3");
("2014-05-01");
("21:23:51");
(a2);
B b=new B();
(list, b);
for (A a3 : list) {
}
4,对比简述一下Activity 和 Fragment 的生命周期。
启动 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;
Service 的特点:服务,像其它的应用对象,在它们的宿主进程中的主线程里运行;不是一
个独立的进程,除非特别指定;它不是一个线程;服务是一种应用程告诉系统它想在后台要
做的某个事情的工具;服务是一种把一个应用程序的功能提供(暴露)给其它应用程序的
设施。