android面試題及答案

一、選擇題

1java.io包中定義了多個流類型來實現輸入和輸出功能,可以從不同的角度對其進行分類,按功能分爲:),

  如果爲讀取的內容進行處理後再輸出,需要使用下列哪種流?)

      A、輸入流和輸出流 B、字節流和字符流  C、節點流和處理流

DFile stream EPipe stream FRandom stream GFilter stream

 

2.下列代碼的執行結果是:(

        public class Test3{

         public static void main(Stringargs[]){

         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

 

3.在繼承中,關於構造方法的說明,下列說法錯誤的是(

A、子類無條件的繼承父類的無參構造方法,

B、子類可以引用父類中的有參構造方法,使用super關鍵字,

C、如果子類沒有構造方法,則父類無參構造方法作爲自已的構造方法,

D、如果子類有無參構造方法,而父類的無參構造方法則被覆蓋。

 

4.以下程序的運行結果爲( 

 public class IfTest{

 public static void main(String args[]){

    intx=3;

    inty=1;

    if(x==y)

      System.out.println("Notequal");

    else

      System.out.println("Equal");

    }

 }

ANot equal    BEqual   C、無輸出   D、編譯出錯

 

5Java語言中字符串“學Java”所佔的內存空間是()

      A. 6個字節

      B. 7個字節

      C. 10個字節

D. 11個字節

 

6.關於下列程序段的輸出結果,說法正確的是:(

     public class MyClass{

       static int i;

       public static void main(String argv[]){

         System.out.println(i);

       }

     }

     A、有錯誤,變量i沒有初始化。

     Bnull

     C1

D0

 

7.下列哪些語句關於內存回收的說明是正確的? (   )

  A程序員必須創建一個線程來釋放內存

  B內存回收程序負責釋放無用內存

  C內存回收程序允許程序員直接釋放內存

  D內存回收程序可以在指定的時間釋放內存對象

 

8.下面異常是屬於Runtime Exception的是(  (多選)

      AArithmeticException

      BIllegalArgumentException

      CNullPointerException

DBufferUnderflowException

 

9Math.round(11.5)等於多少(). Math.round(-11.5)等於多少().

A11 ,-11  B11 ,-12  C12 ,-11  D12 ,-12

 

10.下列程序段的輸出結果是:(

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

     }

     Atrue Bfalse CD0

 

11activity對一些資源以及狀態的操作保存,最好是保存在生命週期的哪個函數中進行(  )

   AonPause() BonCreate()  C onResume()  DonStart()

 

12Intent傳遞數據時,下列的數據類型哪些可以被傳遞( (多選)

ASerializable Bcharsequence CParcelable DBundle

 

13android中下列屬於Intent的作用的是)

  A、實現應用程序間的數據共享

  B、是一段長的生命週期,沒有用戶界面的程序,可以保持應用在後臺運行,而不會因爲切換頁面而消失

  C、可以實現界面間的切換,可以包含動作和動作數據,連接四大組件的紐帶

 D、處理一個應用程序整體性的工作                       

 

14.下列屬於SAX解析xml文件的優點的是)

      A、將整個文檔樹在內存中,便於操作,支持刪除,修改,重新排列等多種功能

      B、不用事先調入整個文檔,佔用資源少

      C、整個文檔調入內存,浪費時間和空間

D、不是長久駐留在內存,數據不是持久的,事件過後,若沒有保存數據,數據就會消失

 

 15.下面的對自定style的方式正確的是()

    A <resources>

          <style name="myStyle">

             <itemname="android:layout_width">fill_parent</item>

         </style>

       </resources>

     B <style name="myStyle">

                <item name="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>

 

   16.在android中使用Menu時可能需要重寫的方法有( )。(多選)

      AonCreateOptionsMenu()

     BonCreateMenu()

      ConOptionsItemSelected()

DonItemSelected()

 

   17.在SQL Server Management Studio中運行下列T-SQL語句,其輸出值()。

      SELECT @@IDENTITY

     A      可能爲0.1

     B      可能爲3

     C      不可能爲-100

D      肯定爲0

 

   18.在SQL Server 2005中運行如下T-SQL語句,假定SALES表中有多行數據,執行查詢之後的結果是()。

       BEGINTRANSACTION 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

        COMMITTRANSACTION B

        COMMIT TRANSACTION A

          ASALES表中qty列最小值大於等於30

          BSALES表中qty列最小值大於等於40

          CSALES表中qty列的數據全部爲50

          DSALES表中qty列最小值大於等於60

 

   19.在android中使用SQLiteOpenHelper這個輔助類時,可以生成一個數據庫,並可以對數據庫版本進行管理的方法可以是( )

     AgetWriteableDatabase()

     BgetReadableDatabase()       

     CgetDatabase()

DgetAbleDatabase()

 

   20android關於service生命週期的onCreate()onStart()說法正確的是)(多選題)

     A、當第一次啓動的時候先後調用onCreate()onStart()方法

     B、當第一次啓動的時候只會調用onCreate()方法

     C、如果service已經啓動,將先後調用onCreate()onStart()方法

D、如果service已經啓動,只會執行onStart()方法,不在執行onCreate()方法

 

   21.下面是屬於GLSurFaceView特性的是)(多選)

          A、管理一個surface,這個surface就是一塊特殊的內存,能直接排版到android的視圖view上。

          B、管理一個EGL display,它能讓opengl把內容渲染到上述的surface上。

          C、讓渲染器在獨立的線程裏運作,和UI線程分離。

          D、可以直接從內存或者DMA等硬件接口取得圖像數據

 

   22.下面在AndroidManifest.xml文件中註冊BroadcastReceiver方式正確的是()

       A<receiverandroid:name="NewBroad">

                <intent-filter>

                <action 

                  android:name="android.provider.action.NewBroad"/>

                <action>

                </intent-filter>

                  </receiver>

     B<receiverandroid:name="NewBroad">

           <intent-filter>

                   android:name="android.provider.action.NewBroad"/>

           </intent-filter>

       </receiver>

     C<receiverandroid:name="NewBroad">

           <action 

                 android:name="android.provider.action.NewBroad"/>

             <action>

       </receiver>

     D<intent-filter>

         <receiverandroid:name="NewBroad">

               <action>

                  android:name="android.provider.action.NewBroad"/>

               <action>

         </receiver>

 </intent-filter>

 

    23.關於ContenValues類說法正確的是)

      A、他和Hashtable比較類似,也是負責存儲一些名值對,但是他存儲的名值對當中的

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

      B、他和Hashtable比較類似,也是負責存儲一些名值對,但是他存儲的名值對當中的

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

      C、他和Hashtable比較類似,也是負責存儲一些名值對,但是他存儲的名值對當中的

         名,可以爲空,而值都是String類型    

      D、他和Hashtable比較類似,也是負責存儲一些名值對,但是他存儲的名值對當中

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

 

   24.我們都知道Hanlder是線程與Activity通信的橋樑,如果線程處理不當,你的機器

      就會變得越慢,那麼線程銷燬的方法是)

       AonDestroy()

       BonClear()

       ConFinish()

DonStop()

 

    25.下面退出Activity錯誤的方法是()

       Afinish()

          B、拋異常強制退出

       CSystem.exit()

DonStop()

 

     26.下面屬於android的動畫分類的有( )(多項)

ATween BFrame CDraw DAnimation

 

     27.下面關於Android dvm的進程和Linux的進程,應用程序的進程說法正確的是( )

        ADVMdalivk的虛擬機.每一個Android應用程序都在它自己的進程中運行,不一定擁有一個獨立

           Dalvik虛擬機實例.而每一個DVM都是在Linux中的一個進程,所以說可以認爲是同一個概念.

        BDVMdalivk的虛擬機.每一個Android應用程序都在它自己的進程中運行,不一定擁有一個獨立

           Dalvik虛擬機實例.而每一個DVM不一定都是在Linux中的一個進程,所以說不是一個概念.

        CDVMdalivk的虛擬機.每一個Android應用程序都在它自己的進程中運行,都擁有一個獨立的      

           Dalvik虛擬機實例.而每一個DVM不一定都是在Linux中的一個進程,所以說不是一個概念.

        DDVMdalivk的虛擬機.每一個Android應用程序都在它自己的進程中運行,都擁有一個獨立的     

           Dalvik虛擬機實例.而每一個DVM都是在Linux中的一個進程,所以說可以認爲是同一個概念.

 

      28Android項目工程下面的assets目錄的作用是什麼

           A、放置應用到的圖片資源。

         B、主要放置多媒體等數據文件

         C、放置字符串,顏色,數組等常量數據

         D、放置一些與UI相應的佈局文件,都是xml文件

 

      29.關於res/raw目錄說法正確的是( )

A這裏的文件是原封不動的存儲到設備上不會轉換爲二進制的格式

B這裏的文件是原封不動的存儲到設備上會轉換爲二進制的格式  

C這裏的文件最終以二進制的格式存儲到指定的包中

D這裏的文件最終不會以二進制的格式存儲到指定的包中

 

      30.下列對android NDK的理解正確的是( )

A NDK是一系列工具的集合

B NDK提供了一份穩定、功能有限的 API頭文件聲明。

C使Java+C的開發方式終於轉正,成爲官方支持的開發方式

D NDK將是 Android 平臺支持 C 開發的開

 

二.填空題

    1.我們用_______來定義一個整數,用_______來定義一個字符類型,稱爲原始數據類型。

  2android中常用的四個佈局是________________________________________

    3android的四大組件是________________________________________

    4java.io包中的________________________類主要用於對對象(Object)的讀寫。

    5androidservice的實現方法是:__________________________

6activity一般會重載7個方法用來維護其生命週期,

  除了onCreate(),onStart(),onDestory(外還有_____________,______________,____________,___________

    7android的數據存儲的方式_________,___________,__________,_________,________

    8.當啓動一個Activity並且新的Activity執行完後需要返回到啓動它的Activity來執行的回調函數是_________________

    9.請使用命令行的方式創建一個名字爲myAvd,sdk版本爲2.2,sd卡是在d盤的根目錄下,

       名字爲scard.img並指定屏幕大小HVGA.____________________________________

   10.程序運行的結果是:_______________

    public class Example{

String str=new String("good");

char[]ch={'a','b','c'};

public static void main(String args[]){

Example ex=new Example();

ex.change(ex.str,ex.ch);

System.out.print(ex.str+" and ");

Sytem.out.print(ex.ch);

}

public void change(String str,char ch[]){

str="test ok";

ch[0]='g';

}

  }

 

三.問答題

 

1.如何定位和解決Andorid的內存溢出問題

 

2.用Java實現一個Singleton模式

 

3.APK之間如何互相傳遞數據

 

4.線程創建有幾種方式,線程同步的幾種方式及實現

 

5.Java實現冒泡排序算分實現

 

一、選擇題答案

 

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

CG

B

D

B

A

D

B

ABCD

C

B

D

ABCD

C

B

A

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

AC

C

D

AB

AD

ABC

A

A

A

C

AB

D

B

A

ABCD

 

二、填空題答案

 

 1. int char

 

 2.FrameLayout,LilnearLayout,RelativeLayout,TableLayout

 

 3.Activity,Broadcast,Service,ContentProvide

 

 4.ObjectInputStream ObjectOutputSteam

 

 5.startService ,bindService

 

 6.onRestart(),onResume(),onPause(),onStop()

 

 7.SharedPreferences存儲,文件存儲,SQLite存儲,ContentProvider,網絡存儲

 

 8.startActivityResult()

 

 9.adnroid create acd -n myAvd -t 8 -s HVDA - Cd:\card.img

 

 10.good and gbc

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章