首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java
订阅
强志黄
更多收藏集
微信扫码分享
微信
新浪微博
QQ
17篇文章 · 0订阅
ART虚拟机 | Java对象和类的内存结构
当我们通过new创建一个Java对象时,虚拟机会安排内存分配的所有工作。但一个Java对象在内存中到底长什么样?它的实例对象放在哪里?继承关系如何处理?这些问题对于大家通常是陌生的。本文试图通过图表示
回归初心:极简 Android 组件化方案 — AppJoint
Android 组件化的概念大概从两年前开始有人讨论,到目前为止,技术已经慢慢沉淀下来,越来越多团队开源了自己组件化框架。本人所在团队从去年开始调研组件化框架,在了解社区众多组件化方案之后,决定自研组件化方案。为什么明明已经有很多轮子可以用了,却还是决定要自己造个新轮子呢? 主…
关于 Synchronized 的一个点,网上99%的文章都错了
而关于 Synchronized 我去年还专门翻阅 JVM HotSpot 1.8 的源码来研究了一波,那时候我就发现有一个点,一个几乎网上所有文章包括《Java并发编程的艺术》也是这样说的一个点。 锁升级想必网上有太多文章说过了,这里提到当轻量级锁 CAS 失败,则当前线程会…
DCL单例模式中,为什么要加volatile?
效率问题:假设第一次判空不加,那么每次进入这个方法,INSTANCE不论是不是null,都会执行下面的synchronized代码块,多线程下会出现锁的竞争,而除了第一次初始化,后面的都不会为null,判空的效率比加锁高。 防止多次初始化:多线程下,有可能会出现两个线程都经过了…
通俗易懂,android是如何管理内存的
内存优化一直是 Android 开发中的一个非常重要的话题,他直接影响着我们 app 的性能表现。但这个话题涉及到的内容很广且都偏向底层,让很多开发者望而却步。同时,内存优化更加偏向于“经验知识”,需要在实际项目中去应用来学习。 因而本文并不想深入到底层去讲内存优化的原理,而是…
CountDownLatch:别浪,等人齐再团!
一入王者深似海,从此对象是路人。 咳咳,不对。大家好,我是磊哥,今天给大家来一篇 CountDownLatch 的文章。 一道非常简单的送分题,如果答不对,那磊哥就要批评你了,哈哈。 可能有人会说:打团战最怕猪队友,但比猪队友更可怕的是打团战人不齐啊兄弟,想想在打团时如果是 5…
怎样的监控,才真正说明系统有问题?
监控不告警,系统就一定没有问题么?怎样的监控,才真正说明系统有问题?今天和大伙聊聊多维度立体化监控。这里的观点是:单维度监控易漏报,多维度立体化监控才是监控平台的根本之道。在设计上都讲究通用+可扩展。接下来介绍的四个维度的监控,在设计上也是看重“通用”“非侵入性”,即被监控的站点...
Android热修复框架面试知识点总结
通过自研的DexDiff算法生成差分包,在客户端和旧的dex合成新的dex文件,利用Android在加载一个类的时候是按顺序从dexElements数组查找加载的,已经加载过了就不会继续查找的原理,在下次app启动的时候将修复好的新dex插入到dexElements的前面。通过…
LeakCanary源码解析
最近看了看LeakCanary的源码,这里记录一下以防忘记,如有不足,恳请指出。 很多人看了之后就有疑惑了,怎么不用初始化呢,这怎么可能就可以使用了。尤其是使用过LeakCanary1.0版本的看官肯定满肚子疑惑,请听我慢慢道来。我们打开源码,找到AppWatcherInsta…
开发者故事 #3 2021 年第 11 周技术学习周报
周一打卡:54. 螺旋矩阵 I 【题解】 周二打卡:59. 螺旋矩阵 II 【题解】 周三打卡:115. 不同的子序列 周四打卡:92. 反转链表 II 【题解】 周五打卡:1603. 设计停车系统 周六打卡:150. 逆波兰表达式求值 【题解】 周日打卡:73. 矩阵置零 【…