Android面試題附答案_第1頁
Android面試題附答案_第2頁
Android面試題附答案_第3頁
Android面試題附答案_第4頁
Android面試題附答案_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、An droid面試題附答案一、選擇題(30題,每題1.5分,共45分)1. java.io包中定義了多個流類型來實(shí)現(xiàn)輸入和輸出功能,可以從 不同的角度對其進(jìn)行分 類,按功能分為:(c),如果為讀取的內(nèi)容進(jìn)行處 理后再輸出,需要使用下列哪種流? (g)A、輸入流和輸出流 B、字節(jié)流和字符流 C、節(jié)點(diǎn)流和處理流D、File stream E、Pipe stream F、Random stream G 、Filter stream2. 下列代碼的執(zhí)行結(jié)果是:(b)public class Test3public static void mai n( Stri ng args)System.out.

2、pri nt(100%3);System.out.print(“,” );System.out.pri ntl n(100%3.0);A、1,1B、1,1.0C、1.0,1D、1.0,1.03. 在繼承中,關(guān)于構(gòu)造方法的說明,下列說法錯誤的是(d)A、子類無條件的繼承父類的無參構(gòu)造方法,B、 子類可以引用父類中的有參構(gòu)造方法,使用super關(guān)鍵字,C、如果子類沒有構(gòu)造方法,則父類無參構(gòu)造方法作為自已的 構(gòu)造方法,D、如果子類有無參構(gòu)造方法,而父類的無參構(gòu)造方法則被覆 蓋。4. 以下程序的運(yùn)行結(jié)果為(b)public class lfTestpublic static void mai n( S

3、tri ng args)int x=3;int y=1;if(x=y)System.out.println(“ Not equal ” );elseSystem.out.println(“Equal” );A、Not equal B、Equal C、無輸出 D、編譯出錯5. Java語言中字符串“學(xué)Java”所占的內(nèi)存空間是(a)A. 6個字節(jié)B. 7個字節(jié)C. 10個字節(jié)D. 11個字節(jié)6. 關(guān)于下列程序段的輸出結(jié)果,說法正確的是:(d )public class MyClassstatic int i;public static void main( Stri ng argv)System

4、.out.pri ntl n(i);A、有錯誤,變量i沒有初始化。B、nullC、1D、07. 下列哪些語句關(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)存對象8. 下面異常是屬于Run time Exception 的是(abcd)(多選)A、ArithmeticExceptionB、IllegalArgumentExceptionC、NullPointerExceptionD、BufferUnderflowException9. Math.round(11.5

5、)等于多少().Math.round(-11.5)等于多少(c). cA、11 ,-11 B、11 ,-12 C、 12 ,-11 D 、12 ,-1210. 下列程序段的輸出結(jié)果是:(b )void complicatedexpressio n_r()int x=20, y=30;boolea n b;b=x50 &y60|x50 &y60|xSystem.out.pri ntl n(b);A、true B、false C、1 D、011. activity對一些資源以及狀態(tài)的操作保存,最好是保存在生命 周期的哪個函數(shù)中進(jìn)行(d)A、onPause() B、onCreate() C、onRe

6、sume() D、onStart()12.Intent傳遞數(shù)據(jù)時,下列的數(shù)據(jù)類型哪些可以被傳遞(abcd) (多選)A、Serializable B、charsequenee C 、Parcelable D、Bundle13.android中下列屬于Intent的作用的是(c)A、實(shí)現(xiàn)應(yīng)用程序間的數(shù)據(jù)共享B、是一段長的生命周期,沒有用戶界面的程序,可以保持應(yīng)用 在后臺運(yùn)行,而不會因?yàn)榍袚Q頁面而消失C、可以實(shí)現(xiàn)界面間的切換,可以包含動作和動作數(shù)據(jù),連接四大組件的紐帶D、處理一個應(yīng)用程序整體性的工作14. 下列屬于SAX解析xml文件的優(yōu)點(diǎn)的是(b)A、將整個文檔樹在內(nèi)存中,便于操作,支持刪除,修

7、改,重新排列等多種功能B、不用事先調(diào)入整個文檔,占用資源少C、整個文檔調(diào)入內(nèi)存,浪費(fèi)時間和空間D、不是長久駐留在內(nèi)存,數(shù)據(jù)不是持久的,事件過后,若沒有保存數(shù)據(jù),數(shù)據(jù)就會消失15. 下面的對自定style的方式正確的是(a)A、B、C、fill_pare ntD、16. 在an droid中使用Menu時可能需要重寫的方法有(ac)。多選)A、onCreateOptionsMenu()B、onCreateMenu()C、onOptionsltemSelected()D、onltemSelected()17. 在 SQL Server Management Studio中運(yùn)行下列 T-SQL 語句

8、,其輸出值(c)。SELECT IDENTIT YA、可能為0.1B、可能為3C、不可能為-100D、肯定為018. 在SQL Server 2005中運(yùn)行如下T-SQL語句,假定SALES 表中有多行數(shù)據(jù),執(zhí)行查詢之 后的結(jié)果是(d )。BEGIN TRANSACTION AUpdate SALES Set qty=30 WHERE qtyBEGIN TRANSACTION BUpdate SALES Set qty=40 WHERE qtyUpdate SALES Set qty=50 WHERE qtyUpdate SALES Set qty=60 WHERE qtyCOMMIT TRA

9、NSACTION BCOMMIT TRANSACTION AA、SALES表中qty列最小值大于等于30B、SALES表中qty列最小值大于等于40C、SALES表中qty列的數(shù)據(jù)全部為50D、SALES表中qty列最小值大于等于6019. 在an droid 中使用SQLiteOpe nH elper 這個輔助類時,可以生成一個數(shù)據(jù)庫,并可以對數(shù) 據(jù)庫版本進(jìn)行管理的方法可以是(ab)A、getWriteableDatabase()B、getReadableDatabase()C、getDatabase()D、getAbleDatabase()20. an droid 關(guān)于 service 生

10、命周期的 on Create()和 on Start() 說法正確的是(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()方法21. 下面是屬于GLSurFaceView特性的是(abc)(多選)A、管理一個surface,這個surface就是一塊特殊的內(nèi)存,能 直接排版到an droid的視圖view 上。B、管理

11、一個EGL display,它能讓opengl把內(nèi)容渲染到上述 的 surface 上。C、 讓渲染器在獨(dú)立的線程里運(yùn)作,和UI線程分離。D、可以直接從內(nèi)存或者 DMA等硬件接口取得圖像數(shù)據(jù)文件中注冊22. 下面在An droidMa nifest.xmlBroadcastReceiver 方式正確的是(a)A、an droid:n ame=a vider.acti on. NewBroad/B、an droid:n ame= ” an vider.actio n.NewBroad ” /C、an droid:n ame=a vider

12、.acti on. NewBroad/D、an droid:n ame= ” an vider.actio n.NewBroad ” /23. 關(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、 他和Hashta

13、ble比較類似,也是負(fù)責(zé)存儲一些名值對,但是他存儲的名值對當(dāng)中的名是String類型,而值也是String類型24. 我們都知道Hanider是線程與Activity通信的橋梁,如果線程 處理不當(dāng),你的機(jī)器就會變得越慢,那么線程銷毀的方法是(a)A、on Destroy。B、onClear()C、onFinish()D、onStop()25. 下面退出Activity錯誤的方法是(c)A、finish()B、拋異常強(qiáng)制退出C、System.exit()D、onStop()26. 下面屬于an droid的動畫分類的有(ab)(多項(xiàng))A、Tween B、Frame C、Draw D、Animat

14、ion27. 下面關(guān)于An droid dvm的進(jìn)程和Lin ux的進(jìn)程,應(yīng)用程序的 進(jìn)程說法正確的是(d)A、DVM 指dalivk的虛擬機(jī)每一個An droid 應(yīng)用程序都在它 自己的進(jìn)程中運(yùn)行,不一定擁有一個獨(dú)立的Dalvik虛擬機(jī)實(shí)例.而每一個DVM都是在Linux中的一個進(jìn) 程,所以說可以認(rèn)為是同一個概念.B、DVM 指dalivk的虛擬機(jī)每一個An droid 應(yīng)用程序都在它 自己的進(jìn)程中運(yùn)行,不一定擁有一個獨(dú)立的Dalvik虛擬機(jī)實(shí)例.而每一個DVM不一定都是在Linux中的 一個進(jìn)程,所以說不是一個概念.C、 DVM指dalivk的虛擬機(jī).每一個An droid應(yīng)用程序都在它

15、自己的進(jìn)程中運(yùn)行,都擁有一個獨(dú)立的Dalvik虛擬機(jī)實(shí)例.而每一個DVM不一定都是在Linux中的一 個進(jìn)程,所以說不是一個概念.D、DVM指dalivk的虛擬機(jī).每一個An droid 應(yīng)用程序都在它 自己的進(jìn)程中運(yùn)行,都擁有一個獨(dú)立的Dalvik虛擬機(jī)實(shí)例.而每一個DVM都是在Linux中的一個進(jìn)程, 所以說可以認(rèn)為是同一個概念.28.Android 項(xiàng)目工程下面的assets目錄的作用是什么bA、放置應(yīng)用到的圖片資源。B、主要放置多媒體等數(shù)據(jù)文件C、放置字符串,顏色,數(shù)組等常量數(shù)據(jù)D、放置一些與UI相應(yīng)的布局文件,都是xml文件29.關(guān)于res/raw 目錄說法正確的是(aA、這里的文件

16、是原圭寸不動的存儲到設(shè)備上不會轉(zhuǎn)換為二進(jìn)制 的格式B、這里的文件是原封不動的存儲到設(shè)備上會轉(zhuǎn)換為二進(jìn)制的格 式C、這里的文件最終以二進(jìn)制的格式存儲到指定的包中D、這里的文件最終不會以二進(jìn)制的格式存儲到指定的包中30.下列對an droid NDK 的理解正確的是(abed )A、NDK是一系列工具的集合B、 NDK提供了一份穩(wěn)定、功能有限的API頭文件聲明。C、使“ Java+C”的開發(fā)方式終于轉(zhuǎn)正,成為官方支持的開 發(fā)方式D、NDK將是An droid 平臺支持C開發(fā)的開端二.填空題(每題2分,共20分)1. 我們用int來定義一個整數(shù),用 char 來定義一個字符類型,稱為原始數(shù)據(jù)類型。2

17、. android 中常用的四個布局是 framlayout , linenarlayout , relativelayout 禾口 tablelayout 。3. android的四大組件是activiey , service , broadcast 禾口conten tprovide。4. java.io 包中的 objectinputstream禾口 objectoutputstream類主要用于對對象(Object)的讀寫。5. android中 service 的實(shí)現(xiàn)方法是:startservice禾口bindservice 。6. activity 一般會重載7個方法用來維護(hù)其生命

18、周期,除了on Create(),o nStart(),o nDestory()夕卜還有on restart, on resume, on pause, on stop。7. android的數(shù) 據(jù)存儲 的方式 sharedpreferenee,文件,SQIite,co nten tprovider,網(wǎng)絡(luò)。8當(dāng)啟動一個Activity并且新的Activity執(zhí)行完后需要返回到啟動它的Activity來執(zhí)行的回調(diào)函數(shù)是 startActivityResult()。9. 請使用命令行的方式創(chuàng)建一個名字為myAvd,sdk 版本為2.2,sd卡是在d盤的根目錄下,名字為 scard.img , 并指

19、定屏幕大小HVGA.。10. 程序運(yùn)行的結(jié)果是: good and gbc。public class ExampleString str= new String(“good ” );charch= a ,b ,c ;public static void mai n( Stri ng args)Example ex二new Example。;ex.cha nge(ex.str,ex.ch);System.out.pri nt(ex.st 葉 ” and “);Sytem.out.pri nt(ex.ch);public void cha nge(Stri ng str,char ch)str=

20、” test ok ” ;ch0= g;三簡答編程題(共35分)1. 在an droid中,請簡述jni的調(diào)用過程。(8分)1)安裝和下載Cygw in,下載 An droid NDK2)在ndk項(xiàng)目中JNI接口的設(shè)計(jì)3)使用C/C+實(shí)現(xiàn)本地方法4)JNI生成動態(tài)鏈接庫.so文件5)將動態(tài)鏈接庫復(fù)制到j(luò)ava工程,在java工程中調(diào)用,運(yùn)行java 工程即可2. 簡述An droid應(yīng)用程序結(jié)構(gòu)是哪些 (7分)An droid應(yīng)用程序結(jié)構(gòu)是:Linux Kernel(Linux 內(nèi)核)、Libraries(系統(tǒng)運(yùn)行庫或者是 C/C+ 核心庫)、ApplicationFramework(開發(fā)框架

21、包)、Applications (核心應(yīng)用程序)3. 請繼承 SQLiteOpenHelper實(shí)現(xiàn):(10 分)1)創(chuàng)建一個版本為1的“ diaryOpenHelper.db ”的數(shù)據(jù)庫,2) .同時創(chuàng)建一個“diary ”表(包含一個_id主鍵并自增長, topic字符型100長度,content字符型1000長度)3) .在數(shù)據(jù)庫版本變化時請刪除diary表,并重新創(chuàng)建出diary 表。public class DBHelper exte nds SQLiteOpe nH elper public final staticStri ngDATABASENAMEdiaryOpenHelper

22、.db ” ;public final static int DATABASEVERSION = 1;/創(chuàng)建數(shù)據(jù)庫publicDBHelper(C on textcon text,Stri ngn ame,CursorFactory factorynt vers ion)super(c on text, n ame, factory, vers ion);/創(chuàng)建表等機(jī)構(gòu)性文件public void on Create(SQLiteDatabase db)String sql = ” create table diary ” +“ (“ +“d in teger primary key auto

23、 in creme nt,” +“ topic varchar(100), ” +“ conten t varchar(1000)” +);db.execSQL(sql);/若數(shù)據(jù)庫版本有更新,則調(diào)用此方法publicvoidon Upgrade(SQLiteDatabasedb,i ntoldVersio n,i nt n ewVers ion)String sql =“drop table if exists diary ” ;db.execSQL(sql);this.o nCreate(db);4.頁面上現(xiàn)有ProgressBar控件progressBar,請用書寫線程以10秒的的時間完

24、成其進(jìn)度顯示工作。(10分)答案public class ProgressBarStu exte nds Activity private ProgressBar progressBar = nu II;protected void on Create(B un dle saved In sta nceState) super.o nCreate(savedl nsta nceState);setC on te ntView(R.gressbar);/從這到下是關(guān)鍵progressBar=(ProgressBar)fi ndViewByld(R.gressBar);Thread thread = new Thread( new Runn able() Overridepublic void run() int progressBarMax = progressBar.getMax();try while(progressBarMax!二progressBar.getProgress()in

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論