
java进阶
耕耘梦想的勇者
读源码,就像领略不同人的思想!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java常量池详解
Java常量池详解什么是常量池什么是常量池java开发中,经常会用到字符串,字符串的创建有两种方式:String str = “abc”;String str = new String(“abc”);这两种方式的创建过程是不同的,java中存量字面量和符号引用的概念,字面量是指由字母、数值组成的字符串或者数值常量。第一种方式的等号右边的"abc"就是一种字面量。符号引用主要包括三类:类和接口的权限定名字段的名称和描述符方法的名称和描述符常量池中的静态数据只有在运行时才会把信息加载到内存原创 2022-01-11 21:57:06 · 1008 阅读 · 0 评论 -
彻底理解java线程状态的切换
Java进阶之线程状态切换Java语言定义了5种进程状态,在任意一个时间点中,一个进程只能有且只有其中的一种状态。新建(NEW)使用new Thread或者实现了Runnable接口创建thread对象,这个对象的状态是new,也可以说是初始化状态,并没有真正开始执行run方法中的任务。...原创 2019-07-25 00:31:58 · 193 阅读 · 0 评论 -
阿里面试题:wait为什么一定要写在同步块中?
wait为什么一定要写在同步块中?浏览博客时看到这个阿里的面试题?将被人的想法和自己的想法记录下来第一点:简书博主占小狼,wait 会引起lost wake up问题,就是如果wait 和 notify写在同一个synchronized对象中话,会出现发送notify的之后,另外一个该对象的才刚刚调用wait方法,这就导致调用wait的对象一直无法被显式唤醒。第二点:这个是自己的想法,因为w...原创 2019-07-25 00:29:55 · 933 阅读 · 0 评论 -
ThreadPoolExecutor源码解析(jdk1.8)
概述线程池解决两个不同的问题:由于减少了每个任务的调用开销,它们通常在执行大量异步任务时提供了更好的性能,并且提供了在执行任务集合时绑定和管理资源(包括线程)的方法。每个ThreadPoolExecutor还维护一些基本统计信息,比如已完成任务的数量。为了在广泛的上下文中起到作用,该类提供了许多可调参数和可扩展钩子。ThreadPoolExecutor将根据corePoolSize和maximu...原创 2019-08-12 15:06:48 · 406 阅读 · 0 评论