首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Java
订阅
珍惜拥有zxyy
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
Android Java垃圾回收机制
JVM的垃圾回收机制 jvm的简介 jvm的内存模型 垃圾回收机制的算法 如何判定对象是否是垃圾
5分钟彻底理解-Java自动装箱、拆箱
当表格中左边列出的基础类型与它们的包装类有如下几种情况时,编译器会自动帮我们进行装箱或拆箱. L0,对应我们代码的第一行,new了一个ArrayList,并赋值给了1号引用(就是list)。 ,然后调用list的add方法。 ,存储得到的浮点数。 ###所以结果很明显了,以fl…
面试官:说一下你常用的加密算法
加密算法我们整体可以分为:可逆加密和不可逆加密,可逆加密又可以分为:对称加密和非对称加密。 常见的不可逆加密算法有MD5,HMAC,SHA1、SHA-224、SHA-256、SHA-384,和SHA-512,其中SHA-224、SHA-256、SHA-384,和SHA-512我…
深入理解Java泛型
ArrayList就是个泛型类,我们通过设定不同的类型,可以往集合里面存储不同类型的数据类型(而且只能存储设定的数据类型,这是泛型的优势之一)。“泛型”简单的意思就是泛指的类型(参数化类型)。想象下这样的场景:如果我们现在要写一个容器类(支持数据增删查询的),我们写了支持Str…
5000字 | 24张图带你彻底理解Java中的21种锁
乐观锁是一种乐观思想,假定当前环境是读多写少,遇到并发写的概率比较低,读数据时认为别的线程不会正在进行修改(所以没有上锁)。写数据时,判断当前 与期望值是否相同,如果相同则进行更新(更新期间加锁,保证是原子性的)。 Java中的乐观锁: CAS,比较并替换,比较当前值(主内存中…
闲来无事,动手写一个LRU本地缓存
缓存失效指的是缓存过期了,需要对过期的缓存数据进行删除。删除可以分为主动删除和被动删除两种 缓存淘汰指的是缓存的数量达到一定值时按照某种规则删除某个数据,不考虑该数据是否过期。常见的缓存淘汰算法有: 选择好了缓存失效和缓存淘汰的算法以后就可以确定缓存结构了,原先考略的是线程安全…
深入理解jvm内存模型以及gc原理
类加载器是将编译好的class文件加载到内存中,并进行验证、初始化等步骤,形成能被jvm直接使用的类型。 可分解为5个步骤:加载–>连接–>初始化–>使用–>卸载。 加载:把class文件以二进制字节流的形式存储到方法区中,并在堆中创建对应的class对象。 连接:连接过程又分…
雨露均沾的OkHttp—WebSocket长连接(使用篇)
最近老板又来新需求了,要做一个物联网相关的app,其中有个需求是客户端需要收发服务器不定期发出的消息。 🤔 不行不行,这样浪费资源了,还耗电,会导致很多请求都是无效的网络操作。 🤔 那就长连接呗?WebSocket协议好像不错,通过握手建立长连接后,可以随时收发服务器的消息…
Vector和ArrayList对比
本文会对ArrayList和Vector进行分析,为什么会关注这两个类,主要是因为他们拥有相同的继承结构,接下来就来探索下这两个类实现和效率的异同。 可以看到,Vector和ArrayList都实现了List和RandomAccess接口,都继承了AbstractList。通过…
深入分析Java反射(八)-优化反射调用性能
Java反射的API在JavaSE1.7的时候已经基本完善,但是本文编写的时候使用的是Oracle JDK11,因为JDK11对于sun包下的源码也上传了,可以直接通过IDE查看对应的源码和进行Debug。 前一篇文章已经介绍了反射调用的底层原理,其实在实际中对大多数Java使…