首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Android基础知识
订阅
寂寞黑莓
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
Java 各种锁的小结
一. synchronized 在 JDK 1.6 之前,synchronized 是重量级锁,效率低下。 从 JDK 1.6 开始,synchronized 做了很多优化,如偏向锁、轻量级锁、自旋锁、适应性自旋锁、锁消除、锁粗化等技术来减少锁操作的开销。 synchroniz…
学会反射后,我被录取了(干货)
有反必有正,就像世间的阴和阳,计算机的0和1一样。天道有轮回,苍天...(净会在这瞎bibi) 在学习反射之前,先来了解正射是什么。我们平常用的最多的 new 方式实例化对象的方式就是一种正射的体现。假如我需要实例化一个HashMap,代码就会是这样子。 某一天发现,该段程序不…
面试官:十问泛型,你能扛住吗?
使用泛型机制编写的代码要比那些杂乱的使用Object变量,然后再进行强制类型转换的代码具有更好的安全性和可读性,也就是说使用泛型机制编写的代码可以被很多不同类型的对象所重用。 在Java增加泛型机制之前就已经有一个ArrayList类,这个ArrayList类的泛型概念是使用继…
深入理解Java泛型
ArrayList就是个泛型类,我们通过设定不同的类型,可以往集合里面存储不同类型的数据类型(而且只能存储设定的数据类型,这是泛型的优势之一)。“泛型”简单的意思就是泛指的类型(参数化类型)。想象下这样的场景:如果我们现在要写一个容器类(支持数据增删查询的),我们写了支持Str…
深入理解内存泄漏
一、JVM内存模型 常见jvm内存模型,主要分为堆区,本地方法栈,虚拟机栈,程序计数器,和方法区。如下图所示: (1)程序计数器 每个线程都会有自己私有的程序计数器(PC)。可以看作是当前线程所执行的
Android事件分发机制完全解析,带你从源码的角度彻底理解(上)
其实我一直准备写一篇关于 Android 事件分发机制的文章,从我的第一篇博客开始,就零零散散在好多地方使用到了 Android 事件分发的知识。也有好多朋友问过我各种问题,比如:onTouch 和 onTouchEvent 有什么区别,又该如何使用?为什么给 ListView…
探索 Android Handler 消息机制
解析Android Handler 消息机制核心组件,阐述epoll/eventfd高效轮询原理,剖析主线程非阻塞、同步屏障及消息池复用机制,结合源码为ANR与卡顿问题提供解决方案。
学习 View 事件分发,就像外地人上了黑车
View 事件分发的本质是递归。递归的本质是,任务下发和结果上报。View 事件分发设计成递归,是为配合 View 的排版规则,形成符合用户直觉的触控体验。
换个姿势,带着问题看Handler
Handler,老生常谈,网上关于它的文章可谓是 "泛滥成灾",而实际开发中,我们却很少手写Handler,毕竟 RxAndroid链式调用 和 Kotlin协程同步方式写异步代码 还是挺香的。 但对于我这种好刨根问底之人来说,得自己过一遍源码才踏实,而且我发现 带着问题 看源…
Android中单例模式的几个坑
首先来看这样一个单例,稍微有点经验的同学可能都会说,这样的单例是非线程安全的。要加个volatile关键字才可以。 但是你要是问他,为什么是非线程安全的单例就答不出来了。搞清楚这个问题其实 对我们的多线程理解是很有好处的。 我们首先明确一下对于jvm来说,完成对一个变量的写操作…