協(xié)程和線程的差異 線程的目的是提高CPU資源使用率, 使多個(gè)任務(wù)得以并行的運(yùn)行,是為了服務(wù)于機(jī)器的. 協(xié)程的目的是為了讓多個(gè)任務(wù)之間更好的協(xié)作,...
前言 LinkedList是基于雙向鏈表實(shí)現(xiàn)的,除了可以當(dāng)鏈表來(lái)操作,它還可以當(dāng)做棧,隊(duì)列以及雙端隊(duì)列來(lái)使用,且是非線程安全。 LinkedLi...
數(shù)組(Array) 數(shù)組指的就是一組相關(guān)類型的變量集合,并且這些變量可以按照統(tǒng)一的方式進(jìn)行操作,數(shù)組數(shù)據(jù)引用數(shù)據(jù)類型,在堆中進(jìn)行內(nèi)存分配,在內(nèi)存...
HashMap概述 官方文檔中這樣描述HashMap: Hash table based implementation of the <tt>M...
前言 分析WindowManager之前先了解一下 Window。Window也就是窗口,它是一個(gè)抽象類,其具體實(shí)現(xiàn)類是PhoneWindow。...
寫(xiě)在前面 因?yàn)閂iewGroup繼承View,View中的measure方法由于是final型不能重載,onMeasure方法也沒(méi)有重寫(xiě)。Vie...
寫(xiě)在前面 自定義View的繪制流程:onMeasure() -> onLayout() ->onDraw(),在分析源碼之前需要了解一下Meas...
寫(xiě)在前面 首先要了解事件分發(fā)機(jī)制的傳遞流程是在點(diǎn)擊事件發(fā)生后,事件先傳遞到Activity,然后傳遞到ViewGroup,最終傳遞到View。主...
寫(xiě)在前面 我們知道在使用handler進(jìn)行消息傳遞時(shí),需要?jiǎng)?chuàng)建Looper.prepare(),以及執(zhí)行Looper.loop()方法不了解的可...