android筆試題及答案_第1頁
android筆試題及答案_第2頁
android筆試題及答案_第3頁
android筆試題及答案_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、單選題1. WebView 中可以用來處理 js 中警示,確認等對話框的是(C)A. WebSettings B.WebViewClient C.WebChromeClient D.WebViewChrome2.假設assets目錄下有文件結構html/hello.html,用loadUrl()方法將該網(wǎng)頁加載至webView時,需傳入的參數(shù)是 (B)A.B.C.D.3 .下列不屬于補間動畫相關類的是 (B)A. TranslateAnimationB. FrameAnimationC. RotateAnimationD. AlphaAnimation4. Android 中網(wǎng)絡互連中需要獲取

2、狀態(tài)碼,根據(jù)狀態(tài)碼來判斷請求是否已經(jīng)完成,下列狀 態(tài)碼表示請求完成的是 (D)A. 100 B.202 C.404 D.2005. 關于 ImageSwitcher 說法錯誤的是: ( B )A. ImageSwitcher 里可以通過 Alpha 設定轉換時候的透明位B. 在使用一個ImageSwitcher之前,不一定要調(diào)用setFactory方法C. setInAnimation 是設置資源被讀入到這個ImageSwitcher 的時候動畫效果D. setOutAnimation 是資源文件從這個 ImageSwitcher 里消失的時候要實現(xiàn)的動畫效果6. 建立藍牙連接時通過_D_方法

3、來獲取BluetoothAdapter對象D. BluetoothAdapter.getDefaultAdapter()7. 關于 Handler 的說法不正確的是 ( A )A. 它實現(xiàn)不同進程間通信的一種機制B. 它避免了在新線程中刷新UI的操作C. 它采用隊列的方式來存儲MessageD. 它實現(xiàn)不同線程間通信的一種機制8. Vector 和 ArrayList 的主要區(qū)別是( B):A. ArrayList 內(nèi)部基于鏈表,而 Vector 是基于 數(shù)組的B. Vector的大部分方法做了同步,而ArrayList沒有同步C. Vector是可串行化的,而ArrayList不是D. Ve

4、ctor 實現(xiàn)了 RandomAccess,而 ArrayList 沒有9下列屬于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ù)就會消失10.String a1="abc" String a2="abc" String a3="abcd" 總共創(chuàng)建 ( A )個 String 對象。A.2 B.3 C.5 D.6多選題1.在添

5、加第一個 appwidget 窗口小部件時,會執(zhí)行的方法是(ABD)A.onReceive B.onEnabled C.onDisabled D.onUpdate2下列屬于SOAP優(yōu)點的是(ABCD)A,SOAP與編程語言無關。SOAP可以使用任何語言來完成B,SOAP是完全和廠商無關。C,SOAP與平臺無關D,SOAP 是簡單的,可擴展的3下列屬于SAX解析XML需要用到的類和接口是(BCD)A.Docume ntBuilderB.SAXParser C.DefaultHa ndler D.SAXParserFactory4在使用藍牙必須獲取的權限是(AD)5.Chronometer類的重要

6、方法(ABC)A.start B.stop C.setBase D.destory簡答題l.oom是什么?如何避免?當程序需要申請一段“大”內(nèi)存,但是虛擬機沒有辦法及時的給到,即使做了GC操作以后這就會拋出OutOfMemoryException 也就是 OOM避免:1)減少內(nèi)存對象的占用I. ArrayMap/SparseArray 代替 hashmapII. 避免在an droid里面使用En umIII. 減少bitmap的內(nèi)存占用IV. 減少資源圖片的大小,過大的圖片可以考慮分段加載內(nèi)存對象的重復利用2)大多數(shù)對象的復用,都是利用對象池的技術。I.listview/gridview/r

7、ecycleview contentview 的復用II.inBitmap 屬性對于內(nèi)存對象的復用 ARGB_8888/RBG_565/ARGB_4444/ALPHA_8這個方法在某些條件下非常有用,比如要加載上千張圖片的時候。III. 避免在on draw方法里面 new對象IV. StringBuilder 代替 +2.SurfaceView & View 的區(qū)別view 的更新必須在 UI thread 中進行 surfaceview 會單獨有一個線程做 ui 的更新。 surfaceview 支持 open GL 繪制。3. 什么時候會發(fā)生內(nèi)存泄露?內(nèi)存泄露的根本原因 ? 長生

8、命周期的對象持有短生命周期的對象。短周期對象就無法及時釋放。I. 靜態(tài)集合類引起內(nèi)存泄露II. remove 方法無法刪除 set 集 Objects.hash(firstName, lastName);III. observer 我們在使用監(jiān)聽器的時候, 往往是 addxxxlistener ,但是當我們不需要的時候, 忘記 removexxxlistener , 就容易內(nèi)存 leak。IV. 各種數(shù)據(jù)鏈接沒有關閉,數(shù)據(jù)庫contentprovider , io, sokect等。cursorV. 內(nèi)部類:java 中的內(nèi)部類(匿名內(nèi)部類),會持有宿主類的強引用 this。所以如果是 new

9、 Thread 這種,后臺線程的操作,當線程沒有執(zhí)行結束時,activity 不會被回收。Context 的引用,當 TextView 等等都會持有上下文的引用。如果有 static drawable ,就會導致該內(nèi)存無法釋放。VI. 單例單例 是一個全局的靜態(tài)對象,當持有某個復制的類 A 是, A 無法被釋放,內(nèi)存 leak。4. 橫豎屏切換時 Activity 的生命周期切換時的生命周期跟清單文件里的配置有關系。不設置 Activity 的 android:configChanges 時,切屏會重新調(diào)用各個生命周期默認首先銷毀當前activity, 然后重新加載。設置 Activity a

10、ndroid:configChanges="orientation|keyboardHidden|screenSize" 時,切屏不會重新調(diào)用各個生命 周期,只會執(zhí)行 onConfigurationChanged 方法。通常在游戲開發(fā) , 屏幕的朝向都是寫死的。5.handler 機制的原理andriod 提供了 Handler 和 Looper 來滿足線程間的通信。 Handler 先進先出原則。 Looper 類用來管理 特定線程內(nèi)對象之間的消息交換(Message Exchange)。1) Looper: 一個線程可以產(chǎn)生一個Looper對象,由它來管理此線程里的Message Queue(消息隊列)。2) Handler:你可以構造 Handler對象來與 Looper溝通,以便 push新消息到

溫馨提示

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

最新文檔

評論

0/150

提交評論