kotlin 使用密封類去實(shí)現(xiàn)受限的繼承結(jié)構(gòu)逆巍,也就是規(guī)定了某一父類的子類只能是定義好的某幾種類型及塘。在這一特性上,等同于枚舉值的作用锐极。和枚舉值不同的是磷蛹,密封類還有類的屬性,枚舉...
kotlin 使用密封類去實(shí)現(xiàn)受限的繼承結(jié)構(gòu)逆巍,也就是規(guī)定了某一父類的子類只能是定義好的某幾種類型及塘。在這一特性上,等同于枚舉值的作用锐极。和枚舉值不同的是磷蛹,密封類還有類的屬性,枚舉...
努比亞技術(shù)團(tuán)隊(duì)原創(chuàng)內(nèi)容溪烤,轉(zhuǎn)載請(qǐng)務(wù)必注明出處。 1.前言 從用戶手指點(diǎn)擊桌面上的應(yīng)用圖標(biāo)到屏幕上顯示出應(yīng)用主Activity界面而完成應(yīng)用啟動(dòng)庇勃,快的話往往都不需要一秒鐘檬嘀,但是這...
ThreadLocal 是一種線程安全的數(shù)據(jù)容器,實(shí)現(xiàn)原理就是會(huì)在不同的線程保持單獨(dú)存儲(chǔ)變量责嚷。最簡(jiǎn)單的使用方式如下: ThreadLocal 源碼解析 構(gòu)造方法 構(gòu)造方法如下...
經(jīng)常在分析 ANR 問題的時(shí)候鸳兽,需要對(duì)線程狀態(tài)了解得比較清楚,才能進(jìn)一步分析問題罕拂。 線程狀態(tài) java 的線程狀態(tài)定義在 Thread.State 中揍异,如下: 其中,相關(guān)狀態(tài)...
內(nèi)推能夠更快捷爆班,有效的幫你進(jìn)入心儀的公司衷掷,如果需要內(nèi)推,阿里 柿菩,字節(jié)跳動(dòng)的同學(xué)戚嗅,可以聯(lián)系我內(nèi)推,長(zhǎng)期有效。內(nèi)推可以幫你了解到具體的部門內(nèi)容懦胞,或者可以交流下面試技巧~ 今年阿里...
Runtime.loadLibrary() 源碼分析 最近的用戶反饋替久,碰到一個(gè) loadLibrary() 失敗的問題,之前對(duì)這一個(gè)流程一直沒有進(jìn)行細(xì)致梳理躏尉,現(xiàn)在趁有空蚯根,梳理...
前段時(shí)間面試了 字節(jié)跳動(dòng) android 崗位,記錄一下面試過程胀糜。 一面 面試官挺年輕的颅拦,看著才三十左右,一面基本是基礎(chǔ)僚纷,問了問題如下: Handler機(jī)制矩距,MessageQ...
std:mutex 在 C++ 中怖竭,mutex 類能用于保護(hù)共享數(shù)據(jù)從多個(gè)線程同時(shí)訪問的同步原語(yǔ)锥债。 mutex 提供排他性非遞歸所有權(quán)語(yǔ)義: 調(diào)用方線程從它成功調(diào)用 lock...
函數(shù)指針介紹 函數(shù)指針,可以作為一個(gè)參數(shù)傳遞到另一個(gè)函數(shù)中痊臭∠牵基本語(yǔ)法如下: data_types(*func_pointer)(data_type arg1,data_typ...
在 AVFormatContext 或者 AVCodecContext 等類里面,第一個(gè)字段都是 AVClass 指針广匙,以AVFormatContext示例允趟,如下: 根據(jù)AP...
高級(jí)特性 @Parcelize 我們經(jīng)常使用 Parceable 這個(gè)接口,但是使用這個(gè)接口存在兩個(gè)非常操蛋的地方鸦致。 需要實(shí)現(xiàn) writeToParcel() 方法和 cre...
mac 上添加環(huán)境變量潮剪,需要和 .bash_profile 文件打交道,一般通過 vim 去編輯這個(gè)文件分唾,但是要執(zhí)行 :wq 等命令抗碰,退出保存,用慣了 ide 的同學(xué)绽乔,可能不...
一.視圖組件 GLSurfaceView Android上用于顯示OpenGL視圖弧蝇,一般是使用GLSurfaceView,一個(gè)繼承自SurfaceView的組件折砸。它的渲染繪制...
kotlin coroutines 協(xié)程教程(一) 介紹及關(guān)鍵API分析kotlin coroutines 協(xié)程 Coroutine 協(xié)程溅呢,是kotlin 上的一個(gè)輕量級(jí)的線程庫(kù)两入,對(duì)比 java 的 Executor,主要有以下特點(diǎn): 更輕量級(jí)...
Dalvik 和 ART Dalvik:Dalvik 虛擬機(jī)祷肯,android 5.0 以前所使用的虛擬機(jī),可執(zhí)行文件為 dex 格式疗隶,基于寄存器的虛擬機(jī)(jvm 基于堆棧)佑笋。...
git merge的三種操作merge, squash merge, 和rebase merge 舉例來說:假設(shè)在master分支的B點(diǎn)拉出一個(gè)新的分支dev,經(jīng)過一段時(shí)間開...
@龍?zhí)料?/a> 手打的斑鼻,不是圖片轉(zhuǎn)換
kotlin coroutines 協(xié)程教程(一) 介紹及關(guān)鍵API分析kotlin coroutines 協(xié)程 Coroutine 協(xié)程蒋纬,是kotlin 上的一個(gè)輕量級(jí)的線程庫(kù),對(duì)比 java 的 Executor坚弱,主要有以下特點(diǎn): 更輕量級(jí)...
Android Drawable完全解析(一):Drawable源碼分析(上)Android Drawable完全解析(一):Drawable源碼分析(中)Android D...
手打的蜀备,源碼里面就有類似的圖
kotlin coroutines 協(xié)程教程(一) 介紹及關(guān)鍵API分析kotlin coroutines 協(xié)程 Coroutine 協(xié)程,是kotlin 上的一個(gè)輕量級(jí)的線程庫(kù)荒叶,對(duì)比 java 的 Executor碾阁,主要有以下特點(diǎn): 更輕量級(jí)...