kotlin 使用密封类去实现受限的继承结构,也就是规定了某一父类的子类只能是定义好的某几种类型。在这一特性上,等同于枚举值的作用。和枚举值不同的是,密封类还有类的属性,枚举...
kotlin 使用密封类去实现受限的继承结构,也就是规定了某一父类的子类只能是定义好的某几种类型。在这一特性上,等同于枚举值的作用。和枚举值不同的是,密封类还有类的属性,枚举...
努比亚技术团队原创内容,转载请务必注明出处。 1.前言 从用户手指点击桌面上的应用图标到屏幕上显示出应用主Activity界面而完成应用启动,快的话往往都不需要一秒钟,但是这...
ThreadLocal 是一种线程安全的数据容器,实现原理就是会在不同的线程保持单独存储变量。最简单的使用方式如下: ThreadLocal 源码解析 构造方法 构造方法如下...
经常在分析 ANR 问题的时候,需要对线程状态了解得比较清楚,才能进一步分析问题。 线程状态 java 的线程状态定义在 Thread.State 中,如下: 其中,相关状态...
内推能够更快捷,有效的帮你进入心仪的公司,如果需要内推,阿里 ,字节跳动的同学,可以联系我内推,长期有效。内推可以帮你了解到具体的部门内容,或者可以交流下面试技巧~ 今年阿里...
Runtime.loadLibrary() 源码分析 最近的用户反馈,碰到一个 loadLibrary() 失败的问题,之前对这一个流程一直没有进行细致梳理,现在趁有空,梳理...
前段时间面试了 字节跳动 android 岗位,记录一下面试过程。 一面 面试官挺年轻的,看着才三十左右,一面基本是基础,问了问题如下: Handler机制,MessageQ...
std:mutex 在 C++ 中,mutex 类能用于保护共享数据从多个线程同时访问的同步原语。 mutex 提供排他性非递归所有权语义: 调用方线程从它成功调用 lock...
函数指针介绍 函数指针,可以作为一个参数传递到另一个函数中。基本语法如下: data_types(*func_pointer)(data_type arg1,data_typ...
在 AVFormatContext 或者 AVCodecContext 等类里面,第一个字段都是 AVClass 指针,以AVFormatContext示例,如下: 根据AP...
高级特性 @Parcelize 我们经常使用 Parceable 这个接口,但是使用这个接口存在两个非常操蛋的地方。 需要实现 writeToParcel() 方法和 cre...
mac 上添加环境变量,需要和 .bash_profile 文件打交道,一般通过 vim 去编辑这个文件,但是要执行 :wq 等命令,退出保存,用惯了 ide 的同学,可能不...
一.视图组件 GLSurfaceView Android上用于显示OpenGL视图,一般是使用GLSurfaceView,一个继承自SurfaceView的组件。它的渲染绘制...
@龙塘溪 手打的
kotlin coroutines 协程教程(一) 介绍及关键API分析kotlin coroutines 协程 Coroutine 协程,是kotlin 上的一个轻量级的线程库,对比 java 的 Executor,主要有以下特点: 更轻量级...
Dalvik 和 ART Dalvik:Dalvik 虚拟机,android 5.0 以前所使用的虚拟机,可执行文件为 dex 格式,基于寄存器的虚拟机(jvm 基于堆栈)。...
git merge的三种操作merge, squash merge, 和rebase merge 举例来说:假设在master分支的B点拉出一个新的分支dev,经过一段时间开...
@龙塘溪 手打的,不是图片转换
kotlin coroutines 协程教程(一) 介绍及关键API分析kotlin coroutines 协程 Coroutine 协程,是kotlin 上的一个轻量级的线程库,对比 java 的 Executor,主要有以下特点: 更轻量级...
Android Drawable完全解析(一):Drawable源码分析(上)Android Drawable完全解析(一):Drawable源码分析(中)Android D...
手打的,源码里面就有类似的图
kotlin coroutines 协程教程(一) 介绍及关键API分析kotlin coroutines 协程 Coroutine 协程,是kotlin 上的一个轻量级的线程库,对比 java 的 Executor,主要有以下特点: 更轻量级...