首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
蟑螂hoop
更多收藏集
微信扫码分享
微信
新浪微博
QQ
16篇文章 · 0订阅
理解Java的强引用、软引用、弱引用和虚引用
Java执行GC判断对象是否存活有两种方式其中一种是引用计数。 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于(reachable)可达状态,程序才能使用它。 从JDK 1.2版本开始,对象的引用被划分为4种级别,…
大家都说 Java 反射效率低,你知道原因在哪里么
我们在 Java 开发中,难免会接触到反射,而在一些框架中,反射的运用更是常见。我相信,每次提到反射,大家的第一反应一定是反射效率低,尽量少使用。 这篇文章就来探索一下这些问题。 由于本机上安装的是 openjdk 12,所以这里就使用 openjdk 12 源码进行分析。 我…
深入理解 Java 线程池:ThreadPoolExecutor
本文比较详细的分析了线程池的工作流程: 分析了线程的创建,任务的提交,状态的转换以及线程池的关闭;介绍了线程池关闭时的过程,也分析了 shutdown 方法与 getTask 方法存在竞态条件等等。
深入理解Java泛型
ArrayList就是个泛型类,我们通过设定不同的类型,可以往集合里面存储不同类型的数据类型(而且只能存储设定的数据类型,这是泛型的优势之一)。“泛型”简单的意思就是泛指的类型(参数化类型)。想象下这样的场景:如果我们现在要写一个容器类(支持数据增删查询的),我们写了支持Str…
RxJava 沉思录(四):总结
本文是 "RxJava 沉思录" 系列的最后一篇分享。本系列所有分享: 我们在本系列开篇中,曾经留了一个问题:RxJava 是否可以让我们的代码更简洁?作为本系列的最后一篇分享,我们将详细地探讨这个问题。承接前面两篇 “时间维度” 和 “空间维度” 的探讨,我们首先从 RxJa…
RxJava 沉思录(一):你认为 RxJava 真的好用吗?
本人两年前第一次接触 RxJava,和大多数初学者一样,看的第一篇 RxJava 入门文章是扔物线写的《给 Android 开发者的 RxJava 详解》,这篇文章流传之广,相信几乎所有学习 RxJava 的开发者都阅读过。尽管那篇文章定位读者是 RxJava 入门的初学者,但…
2018 Java 后端工程师的书单推荐
分类困难因而没分。大体顺序,编程开发 => 数据库 => 架构运维 => 算法 欢迎加入我的知识星球。 一起读源码,聊源码。 好程序员就是我,我就是隔壁老王。 推荐理由:本书介绍了在Java编程中78条极具实用价值的经验规则,这些经验规则涵盖了大多数开发人员每天所面临的问题的解…
聊一聊-JAVA 泛型中的通配符 T,E,K,V,?
Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 在没有泛型的情况的下,通过对类型 Object 的引用来实现…
Android程序员的Java后台学习建议
Android 开发作为“安身立命”的资本,在面对如今“移动要凉”的氛围,我们在沉住气 “纵向进修” 的同时,有时也希望 横向拓展 自身的能力,而 Android 开发在这一方面有着先天的优势,Java 和良好的开放氛围给予了我们更多可能。 本文主要讲述本人在 Java Web…
面试官最爱的volatile关键字
在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层实现以及操作系统的相关知识。 1 . …