推薦:《2020年Android面試題大匯總【收藏】》
下面這些面試題目,我在面試中不止一次遇到過,雖然只是簡單的筆試選擇題,但是也可能是你面試的第一關(guān),為你后面的表現(xiàn)做一個好的鋪墊!
1.下列哪些語句關(guān)于內(nèi)存回收的說明是正確的? (b)
A、 程序員必須創(chuàng)建一個線程來釋放內(nèi)存
B、 內(nèi)存回收程序負(fù)責(zé)釋放無用內(nèi)存
C、 內(nèi)存回收程序允許程序員直接釋放內(nèi)存
D、 內(nèi)存回收程序可以在指定的時間釋放內(nèi)存對象
2.下面異常是屬于Runtime Exception 的是(abcd)(多選)
A、ArithmeticException
B、IllegalArgumentException
C、NullPointerException
D、BufferUnderflowException
3.Math.round(11.5)等于多少(). Math.round(-11.5)等于多少(c).
A、11 ,-11 B、11 ,-12 C、12 ,-11 D、12 ,-12
解釋:java中的四舍五入算法是在原來數(shù)值的基礎(chǔ)上加上0.5后,再取和它最相近的數(shù)值。
4.下列程序段的輸出結(jié)果是:(b)
1. <span style="font-size:18px;">void complicatedexpression_r(){
2. int x=20, y=30;
3. boolean b;
4. b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60;
5. System.out.println(b);
6. }</span>
A、true B、false C、1 D、011.activity
5.對一些資源以及狀態(tài)的操作保存,最好是保存在生命周期的哪個函數(shù)中進行(d)
A、onPause() B、onCreate()C、onResume()D、onStart()
6.Intent傳遞數(shù)據(jù)時,下列的數(shù)據(jù)類型哪些可以被傳遞(abcd)(多選)
A、Serializable B、charsequenceC、ParcelableD、Bundle
7.android 中下列屬于Intent的作用的是(c)
A、實現(xiàn)應(yīng)用程序間的數(shù)據(jù)共享
B、是一段長的生命周期,沒有用戶界面的程序,可以保持應(yīng)用在后臺運行,而不會因為切換頁面而消失
C、可以實現(xiàn)界面間的切換,可以包含動作和動作數(shù)據(jù),連接四大組件的紐帶
D、處理一個應(yīng)用程序整體性的工作
8.下列屬于SAX解析xml文件的優(yōu)點的是(b)
A、將整個文檔樹在內(nèi)存中,便于操作,支持刪除,修改,重新排列等多種功能
B、不用事先調(diào)入整個文檔,占用資源少
C、整個文檔調(diào)入內(nèi)存,浪費時間和空間
D、不是長久駐留在內(nèi)存,數(shù)據(jù)不是持久的,事件過后,若沒有保存數(shù)據(jù),數(shù)據(jù)就會消失
9.下面的對自定style的方式正確的是(a)
A、
<resources> <style name="myStyle"> <item name="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>
10.在android中使用Menu時可能需要重寫的方法有(ac)。(多選)
A、onCreateOptionsMenu()
B、onCreateMenu()
C、onOptionsItemSelected()
D、onItemSelected()
11.在SQL ServerManagement Studio中運行下列T-SQL語句,其輸出值(c)。
SELECT @@IDENTITY
A、可能為0.1
B、可能為3
C、不可能為-100
D、肯定為0
12.在SQL Server2005中運行如下T-SQL語句,假定SALES表中有多行數(shù)據(jù),執(zhí)行查詢之 后的結(jié)果是(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列的數(shù)據(jù)全部為50
D、SALES表中qty列最小值大于等于60
13.在android中使用SQLiteOpenHelper這個輔助類時,可以生成一個數(shù)據(jù)庫,并可以對數(shù)據(jù)庫版本進行管理的方法可以是(ab)
A、getWriteableDatabase()
B、getReadableDatabase()
C、getDatabase()
D、getAbleDatabase()
14.android 關(guān)于service生命周期的onCreate()和onStart()說法正確的是(ad)(多選題)
A、當(dāng)?shù)谝淮螁拥臅r候先后調(diào)用onCreate()和onStart()方法
B、當(dāng)?shù)谝淮螁拥臅r候只會調(diào)用onCreate()方法
C、如果service已經(jīng)啟動,將先后調(diào)用onCreate()和onStart()方法
D、如果service已經(jīng)啟動,只會執(zhí)行onStart()方法,不在執(zhí)行onCreate()方法
15.下面是屬于GLSurFaceView特性的是(abc)(多選)
A、管理一個surface,這個surface就是一塊特殊的內(nèi)存,能直接排版到android的視圖view上。
B、管理一個EGL display,它能讓opengl把內(nèi)容渲染到上述的surface上。
C、讓渲染器在獨立的線程里運作,和UI線程分離。
D、可以直接從內(nèi)存或者DMA等硬件接口取得圖像數(shù)據(jù)
16.下面在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>
17.關(guān)于ContenValues類說法正確的是(a)
A、他和Hashtable比較類似,也是負(fù)責(zé)存儲一些名值對,但是他存儲的名值對當(dāng)中的
名是String類型,而值都是基本類型
B、他和Hashtable比較類似,也是負(fù)責(zé)存儲一些名值對,但是他存儲的名值對當(dāng)中的
名是任意類型,而值都是基本類型
C、他和Hashtable比較類似,也是負(fù)責(zé)存儲一些名值對,但是他存儲的名值對當(dāng)中的
名,可以為空,而值都是String類型
D、他和Hashtable比較類似,也是負(fù)責(zé)存儲一些名值對,但是他存儲的名值對當(dāng)中
的名是String類型,而值也是String類型
18.我們都知道Hanlder是線程與Activity通信的橋梁,如果線程處理不當(dāng),你的機器就會變得越慢,那么線程銷毀的方法是(a)
A、onDestroy()
B、onClear()
C、onFinish()
D、onStop()
19.下面退出Activity錯誤的方法是(c)
A、finish()
B、拋異常強制退出
C、System.exit()
D、onStop()
20.下面屬于android的動畫分類的有(ab)(多項)
A、Tween B、Frame C、Draw D、Animation
21.下面關(guān)于Androiddvm的進程和Linux的進程,應(yīng)用程序的進程說法正確的是(d)
A、DVM指dalivk的虛擬機.每一個Android應(yīng)用程序都在它自己的進程中運行,不一定擁有一個獨立 的Dalvik虛擬機實例.而每一個DVM都是在Linux中的一個進程,所以說可以認(rèn)為是同一個概念.
B、DVM指dalivk的虛擬機.每一個Android應(yīng)用程序都在它自己的進程中運行,不一定擁有一個獨立的Dalvik虛擬機實例.而每一個DVM不一定都是在Linux中的一個進程,所以說不是一個概念.
C、DVM指dalivk的虛擬機.每一個Android應(yīng)用程序都在它自己的進程中運行,都擁有一個獨立的Dalvik虛擬機實例.而每一個DVM不一定都是在Linux中的一個進程,所以說不是一個概念.
D、DVM指dalivk的虛擬機.每一個Android應(yīng)用程序都在它自己的進程中運行,都擁有一個獨立的Dalvik虛擬機實例.而每一個DVM都是在Linux中的一個進程,所以說可以認(rèn)為是同一個概念.
22.Android項目工程下面的assets目錄的作用是什么(b)
A、放置應(yīng)用到的圖片資源。
B、主要放置多媒體等數(shù)據(jù)文件
C、放置字符串,顏色,數(shù)組等常量數(shù)據(jù)
D、放置一些與UI相應(yīng)的布局文件,都是xml文件
23. 關(guān)于res/raw目錄說法正確的是(a)
A、這里的文件是原封不動的存儲到設(shè)備上不會轉(zhuǎn)換為二進制的格式
B、 這里的文件是原封不動的存儲到設(shè)備上會轉(zhuǎn)換為二進制的格式
C、這里的文件最終以二進制的格式存儲到指定的包中
D、 這里的文件最終不會以二進制的格式存儲到指定的包中
注:在Android中不能直接打開res aw目錄中的數(shù)據(jù)庫文件, 而需要在程序第一次啟動時將該文件復(fù)制到手機內(nèi)存或SD卡的某個目錄中, 然后再打開該數(shù)據(jù)庫文件。復(fù)制的基本方法是使用getResources().openRawResource方法獲 得res aw目錄中資源的 InputStream
24.下列對android NDK的理解正確的是(abcd )
A、 NDK是一系列工具的集合
B、 NDK 提供了一份穩(wěn)定、功能有限的API頭文件聲明。
C、 使 “Java+C”的開發(fā)方式終于轉(zhuǎn)正,成為官方支持的開發(fā)方式
D、 NDK 將是 Android 平臺支持 C 開發(fā)的開端
上面都是一些簡單的問題,有些看一遍就能記住了,有些不理解的話,要自己去網(wǎng)上查一查,加上印象!