Java
-
线程内部的run方法可以向外抛出异常吗?
提出问题 线程的run方法向外可以抛出异常吗,或者能被主线程捕获异常吗?比如下面这段代码: public static void main(String[] args) { try…
-
JDK8新增高效原子累加器LongAdder源码分析
很久以前写过CAS应用之JUC下的原子类,但是LongAdder这个类没有去看,只是给了一个其他博客的参考链接。今天就自己来分析一下。 AtomicLong的问题和LongAdde…
-
Random在多线程下的问题以及ThreadLocalRandom类分析
Ramdom在多线程环境下的问题 首先我们看一下Random类的nextInt源码: //产生[0,bound)的随机数 public int nextInt(int bound)…
-
谈一谈StringBuffer、StringBuilder及String在JDK9中的变化
本文参考资源: JAVA9 String新特性,说说你不知道的东西Java人在江湖-CSDN博客 StringBuffer和StringBuilder的区别 这里谈的是JDK8中S…
-
try-catch-finally字节码实例探究
本文使用Idea的jclasslib插件查看字节码。本文全程自言自语,请勿自行代入。 概述 java是怎么处理try-catch-finally的? 我们在深入理解java虚拟机第…
-
Java中SPI机制介绍和源码分析
本文参考资源: 高级开发必须理解的Java中SPI机制 - 简书 什么是SPI SPI全称为Service Provider Interface,是一种服务发现机制。SPI 的本质…
-
NIO零拷贝与其系统函数调用
本文参考资源: Java NIO学习笔记四(零拷贝详解)Java拿笔小星的博客-CSDN博客 关于Buffer和Channel的注意事项和细节 ByteBuffer不止可以存取by…
-
Java之UDP编程
DatagramSocket概述 上次在Java网络套接字Socket编程那篇博客里只写了Socket和ServerSocket,即TCP通信,这次来补充一下UDP通信。 和Soc…
-
Java日志框架LOG4J2的介绍和使用
前置知识: 日志门面SLF4J介绍和使用 推荐阅读: Java日志框架Logback介绍和使用 log4j2概述 Apache Log4j2是对Log4j的升级版,参考了logba…
-
Java日志框架Logback介绍和使用
前置知识: 日志门面SLF4J介绍和使用 Logback概述 Logback是由log4j、slf4j创始人Ceki Gülcü设计的另一个开源日志组件,性能比log4j要好。它自…