Android面试题

1、下面异常是属于Runtime Exception 的是(abcd)(多选) 
   A、ArithmeticException

  B、IllegalArgumentException

  C、NullPointerException

  D、BufferUnderflowException

    解析:

   A、public class ArithmeticException extends RuntimeException

      当出现异常的运算条件时,抛出此异常。例如,一个整数“除以零”时,抛出此类的一个实例。

   B、public class IllegalArgumentException extends RuntimeException

      抛出的异常表明向方法传递了一个不合法或不正确的参数。

   C、public class NullPointerException extends RuntimeException

      空指针。

   D、public class BufferUnderflowException extends RuntimeException

      数组下溢异常。

      举个例子:定义数组 a[10] ;即 a[0],a[1],a[2]...a[8],a[9] 一共十个,上溢出指访问下标小于0,下溢出访问下标大于9.例如 a[-1],a[10]都是错的。总之一句话 上溢出就是访问下标小于0,下溢出是访问下标大于等于数组长度。

2、Math.round(11.5)等于多少(), Math.round(-11.5)等于多少。( C )

   A、11 ,-11   B、11 ,-12   C、12 ,-11   D、12 ,-12

   解析: 

   Math.round 

  语法:
   Math.round(x);
  参数:
   x 为一数值。
  解释:
   方法。返回对参数x四舍五入后所得的整数近似值。

    再来看:math.round(-4.4)=-4;
            math.round(-4.5)=-4;
            math.round(4.4)=4;
            math.round(4.5)=5;
    如何解释?

    4.3<4.4<4.5  so  
    math.round(4.3)=4   
    math.round(4.4)=4   
    math.round(4.5)=5

    -4.6<-4.5 <-4.4 so 
    math.round(-4.6)=-5 
    math.round(-4.5)=-4
    math.round(-4.4)=-4

    -4.51   |-4.50   -4.49

   4.49  | 4.50  4.51

   因为是负数,所以临界点都是在5的左侧,文字上的“四舍五入”,让人容易糊涂。

3、下列程序段的输出结果是:(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、true B、false C、1 D、011.activity

    解析:b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60,该表达式在判定x>50为假时,就不会再对后面的表达式进行计算了,因为 && 运算,只要有一方为false最终表达式就为false。

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

   A、onPause() B、onCreate() C、 onResume() D、onStart() 

5、Intent传递数据时,下列的数据类型哪些可以被传递(abcd)(多选)

   A、Serializable B、charsequence C、Parcelable D、Bundle

6、下列属于SAX解析xml文件的优点的是(b) 

    A、将整个文档树在内存中,便于操作,支持删除,修改,重新排列等多种功能

  B、不用事先调入整个文档,占用资源少

  C、整个文档调入内存,浪费时间和空间

  D、不是长久驻留在内存,数据不是持久的,事件过后,若没有保存数据,数据就会

  消失

   解析:A 是 DOM解析xml文件的优点;B是 SAX解析xml文件的优点;C是 DOM解析XML文件的缺点,D是SAX解析XML文件的缺点,详细解析请参照以下网址:

    http://blog.chinaunix.net/space.php?uid=24448954&do=blog&id=3069373

7、下面的对自定style的方式正确的是 (a)

#div_code img{border:0px;}
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--> A、  < resources >
       
< style name = " myStyle " >
                            
< itemname = " android:layout_width " > fill_parent </ item >
                     
</ style >
</ resources >
     B、 
< style name = " myStyle " >
                            
< itemname = " android:layout_width " > fill_parent </ item >
   
</ style >
     C、 
< resources >
                            
< itemname = " android:layout_width " > fill_parent </ item >
  
</ resources >
     D、 
< resources >
                            
< stylename = " android:layout_width " > fill_parent </ style >
  
</ resources >

8、下列哪些语句关于内存回收的说明是正确的? (b ) 

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

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

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

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

9、android 中下列属于Intent的作用的是(c) 

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

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

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

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

10、在android中使用Menu时可能需要重写的方法有(ac)(多选)

    A、onCreateOptionsMenu()

  B、onCreateMenu()

  C、onOptionsItemSelected()

  D、onItemSelected()

11、在SQL Server Management Studio 中运行下列T-SQL语句:SELECT @@IDENTITY ,其输出值(c)。       A、 可能为0.1     B、 可能为3

  C、 不可能为-100  D、 肯定为0

    解析:

@@identity是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值, 是系统定义的全局变量。一般系统定义的全局变量都是以@@开头,用户自定义变量以@开头。 比如有个表A,它的自增列是id,当向A表插入一行数据后,如果插入数据后自增列的值自动增加至 101,则通过select @@identity得到的值就是101。使用@@identity的前提是在进行insert操作后, 执行select @@identity的时候连接没有关闭,否则得到的将是NULL值。

12、在SQL Server 2005中运行如下T-SQL语句,假定SALES表中有多行数据,执行查询之后的结果是(d)。    

    BEGIN TRANSACTION A 

  Update SALES Set qty=30 WHERE qty<30 

  BEGIN TRANSACTION B 

  Update SALES Set qty=40 WHEREqty<40 

  Update SALES Set qty=50 WHEREqty<50 

  Update SALES Set qty=60 WHEREqty<60 

  COMMIT TRANSACTION B 

  COMMIT TRANSACTION A 

  A、SALES表中qty列最小值大于等于30 

  B、SALES表中qty列最小值大于等于40 

  C、SALES表中qty列的数据全部为50 

  D、SALES表中qty列最小值大于等于60 

13、在android中使用SQLiteOpenHelper这个辅助类时,可以生成一个数据库,并可以对数据库版本进行管理的方法可以是(ab) 

    A、getWriteableDatabase()

  B、getReadableDatabase()

  C、getDatabase()

  D、getAbleDatabase()

14、android 关于service生命周期的onCreate()和onStart()说法正确的是(ad)(多选题) 

    A、当第一次启动的时候先后调用onCreate()和onStart()方法

  B、当第一次启动的时候只会调用onCreate()方法

  C、如果service已经启动,将先后调用onCreate()和onStart()方法

  D、如果service已经启动,只会执行onStart()方法,不在执行onCreate()方法

15、下面是属于GLSurFaceView特性的是(abc)(多选)

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

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

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

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

16、下面在AndroidManifest.xml文件中注册BroadcastReceiver方式正确的(a)

#div_code img{border:0px;}
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

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

17、关于ContenValues类说法正确的是(a) 

    A、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的

  名是String类型,而值都是基本类型

  B、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的

  名是任意类型,而值都是基本类型

  C、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中的

  名,可以为空,而值都是String类型

  D、他和Hashtable比较类似,也是负责存储一些名值对,但是他存储的名值对当中

  的名是String类型,而值也是String类型

18、我们都知道Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是(a) 

    A、onDestroy()

  B、onClear()

  C、onFinish()

  D、onStop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值