android考试题

   一、选择题

1. Math.round(11.5)等于多少(    ). Math.round(-11.5) 等于多少(   C  ).

A11 ,-11    B11 ,-12

C12 ,-11    D12 ,-12

 

2. 对一些资源以及状态的操作保存,最好是保存在生命周期的哪个函数中进行(  D  )

AonPause()    BonCreate()

C onResume()  DonStart()

 

3. Intent传递数据时,下列的数据类型哪些可以被传递  ( A B C D   )(多选)

AString      BInt     CList    DBundle

 

4. 下列哪些语句关于内存回收的说明是正确的? (  B  )

    A、程序员必须创建一个线程来释放内存

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

 

5.下列代码的执行结果是:(  B        public class Test3{     public 

static void main(String args[]){     System.out.print(100%3);     

System.out.print(“,”);     System.out.println(100%3.0);       }     }       

A1,1       B1,1.0       C1.0,1       D1.0,1.0

 

6. android 中下列属于Intent的作用的是(   C   )

A、实现应用程序间的数据共享

B、是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会

因为切换页面而消失

C、可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带

D、处理一个应用程序整体性的工作

 

7. android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以

对数据库版本进行管理的方法可以是(  AB  )  多选

AgetWriteableDatabase()

BgetReadableDatabase()

CgetDatabase()

DgetAbleDatabase()

 

8. 下面是属于GLSurFaceView特性的是(  ABC   )(多选)

A、管理一个surface,这个surface就是一块特殊的内存,能直接排版到android的视

view上。

B、管理一个EGL display,它能让opengl把内容渲染到上述的surface上。

C、让渲染器在独立的线程里运作,和UI线程分离。

D、可以直接从内存或者DMA等硬件接口取得图像数据

 

9. 下面在AndroidManifest.xml文件中注册BroadcastReceiver方式正确的(  A 

     A<receiver android:name="NewBroad">

                     <intent-filter>

                            <action 

                   android: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">

                     <action 

                  android: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>

 

10. 我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器

就会变得越慢,那么线程销毁的方法是(   A     )

AonDestroy()

BonClear()

ConFinish()

DonStop()

 

11. 下面退出Activity错误的方法是(  C   )

Afinish()

B、抛异常强制退出

CSystem.exit()

DonStop()

 

12. 下面关于Android dvm的进程和Linux的进程,应用程序的进程说法正确的是(  D   )

ADVMdalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定

拥有一个独立的Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认

为是同一个概念.

BDVMdalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,不一定

拥有一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux中的一个进程,所以说

不是一个概念.

CDVMdalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有

一个独立的Dalvik虚拟机实例.而每一个DVM不一定都是在Linux中的一个进程,所以说不是

一个概念.

DDVMdalivk的虚拟机.每一个Android应用程序都在它自己的进程中运行,都拥有

一个独立的 Dalvik虚拟机实例.而每一个DVM都是在Linux中的一个进程,所以说可以认为

是同一个概念.

 

13. Android项目工程下面的assets目录的作用是什么(  B  )

A、放置应用到的图片资源。

B、主要放置多媒体等数据文件

C、放置字符串,颜色,数组等常量数据

D、放置一些与UI相应的布局文件,都是xml文件

 

 

14.关于res/raw目录说法正确的是(  A  )

A、这里的文件是原封不动的存储到设备上不会转换为二进制的格式

B、这里的文件是原封不动的存储到设备上会转换为二进制的格式

C、这里的文件最终以二进制的格式存储到指定的包中

D、这里的文件最终不会以二进制的格式存储到指定的包中'

 

15.android系统安装软件格式是( C

        A.PXL      B.SIS     C.APK     D.DA

 

 

1.android程序中,Log.w()用于输出什么级别的日志信息?(  C  )

A、调试        B、信息

C、警告             D、错误

2、在Activity中需要找到一个idbookName的的TextView组件,下面哪种语句写法是正确的?(  C       )

ATextView tv = this.findViewById(R.id.bookName);

BTextView tv = (TextView)this.findViewById(R.id.code);

CTextView tv = (TextView)this.findViewById(R.id.bookName);

DTextView tv = (TextView)this.findViewById(R.string.bookName);

3、如果将一个TextViewandroid:layout_height属性值设置为wrap_content,那么该组件将是以下哪种显示效果?(   D        )

A、该文本域的宽度将填充父容器宽度

B、该文本域的宽度仅占据该组件的实际宽度

C、该文本域的高度将填充父容器高度

D、该文本域的高度仅占据该组件的实际高度

4、给一个TextView设置红色字体,应该使用以下哪种写法?(  A  )

AsetTextColor(0xffff0000);

BsetColor("0xffff0000")

CsetTextColor("0xffff0000")

DsetColor("red")

5、对于一个Activity,在AndroidManifest.xml中对他这样进行定义      <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /></intent-filter>,这样的描述代表什么含义?( B      

A、无明确含义,每个Activity都需要这样定义

B、代表该Activity将作为程序的主Activity,并且在LAUNCHER菜单中启动

C、代表该Activity将在桌面上建立图标并启动

D、代表该Activity的优先级高于其他的Activity

6、在Android应用程序中,图片应放在那个目录下?(  D  )

Araw     Bvalues

Clayout     Ddrawable

7、关于AndroidManifest.xml文件,以下描述错误的选项有哪些?(   A   )

A、在所有的元素中只有<manifest><application>是必需的,且只能出现一次

B、处于同一层次的元素,不能随意打乱顺序

    C、元素属性一般都是可选的,但是有些属性是必须设置的

    D、对可选的属性,即使不写,也有默认的数值项说明

8、如果使用LinearLayout实现组件垂直排列,那么在xml中应添加什么属性进行设置?( A )

Aandroid:orientation="vertical"

Bandroid:vertical="true"

Candroid:orientation="horizontal"

Dandroid:horizontal="true"

9、在AndroidManifest.xml中描述一个Activity时,该Activitylabel属性是指定什么的?(   B       )

A、指定该Activity的图标

B、指定该Activity的显示标签

C、指定该Activity和类相关联的类名

D、指定该Activity的唯一标示

10Activity生命周期中,第一个需要执行的方法是什么?( B)

AonStart           BonCreate

ConReStart       DonResume

 

 

    二、简答题,共5题,第510分,其它每题5分,共计30

1.Android中数据存储的方法有几种?分别是什么?

 

     有五种

          分别为:

1)使用SharedPreferences存储数据

2)文件存储数据

3SQLite数据库存储数据

4)使用ContentProvider存储数据

5)网络存储数据

 

2.请介绍下Android中常用的五种布局。

 

    FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),   RelativeLayout(相对布局),TableLayout(表格布局)

 

     

3、什么是Intent?其作用是什么?

    Intent 是一个将要执行的动作的抽象的描述,一般来说是作为参数来使用,

Intent来协助完成android各个组件之间的通讯。

intent主要是用来启动其他的activity 或者service,所以可以将intent理解成activity之间的粘合剂。

 

  

4、简述Android应用程序结构是哪些?

      应用程序(Application

      应用程序框架(Appliciation Framework

      各种库(Libraries)和Android运行环境(RunTime)

      操作系统层(OS

    

   

5Android中网络通信的方法有几种?简述Aapche Http协议模拟浏览器通讯的步骤。

 

三、编程题:

SQLite数据库编程,实现数据库的创建、表的创建、对表进行操作,要求如下:

请继承SQLiteOpenHelper实现:(25)

1).创建一个版本为1的“ptac.db”的数据库  10分)

 

2).同时创建一个“person”表(包含一个id主键并自增长,name字符型50长度, age整型20长度)         10分)

 

3).添加一条数据到数据库中              5分)

 

package com.example.lession05_db.db;

import android.content.Context;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteDatabase.CursorFactory;

import android.database.sqlite.SQLiteOpenHelper;

public class DBSQLiteOpenHelper extends SQLiteOpenHelper {

       private static final String name = "CSDN.db";

       private static final int version = 3;

       public DBSQLiteOpenHelper(Context context) {

              super(context, name, null, version);

       }

       public void onCreate(SQLiteDatabase db) {

              db.execSQL("create table person(personid integer primary key autoincrement,name varchar(20),age integer )");

       }

       public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

              db.execSQL("alter table person add account integer");

       }

 

}     

 

package com.example.lession05_db.db.dao;

import android.database.sqlite.SQLiteDatabase;

import com.example.lession05_db.domain.Person;

 

public class PersonDaoImpl {

       public void insert(SQLiteDatabase db, Person entity) {

              if (db.isOpen()) {

                     db.execSQL(

                                   "insert into person(name,age,account) values(?,?,?)",

                                   new Object[] { entity.getName(), entity.getAge(),

                                                 entity.getAccount() });

                     db.close();

              }

       }

}

 

package com.example.lession05_db.domain;

import java.io.Serializable;

public class Person implements Serializable {

       private static final long serialVersionUID = 1L;

       private Integer id;

       private String name;

       private Integer age;

       private Integer account;

 

       public Person() {

              super();

       }

       public Person(Integer id, String name, Integer age, Integer account) {

              super();

              this.id = id;

              this.name = name;

              this.age = age;

              this.account = account;

       }

//此处省略setertgetter方法,以及tostring方法

}  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值