加载中
☕【Java技术指南】「技术盲区」看看线程以及线程池的异常处理机制都有哪些?

线程异常捕获问题 Java异常在线程之间不是共享的,在线程中抛出的异常是线程自己的异常,主线程并不能捕获到。也就是说你把线程执行的代码看成另一个主函数。 上面A和B的运行是互相独立的,虽...

☕【Java技术指南】「Java8技术盲区」函数接口字典:看看还有哪些你所不知道函数接口?

函数接口的定义 函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 函数接口的特点 函数式接口可以被隐式转换为lambda表达式。 Lambda表达式...

☕【Java技术指南】「Java8编程专题」让你真正会用对Java新版日期时间API编程指南

技术背景 一切都源于JSR-310规范 JSR-310规范提供一个新的和改进的Java日期与时间API,会在Java8中包含,可以下载OpenJDK早期发布版本试用,详细信息可见:https://jdk8.java.net/download....

☕【Java技术指南】「JPA编程专题」让你不再对JPA技术中的“持久化型注解”感到陌生了!

JPA的介绍分析 Java持久化API (JPA) 显著简化了Java Bean的持久性并提供了一个对象关系映射方法,该方法使您可以采用声明方式定义如何通过一种标准的可移植方式,将Java 对象映射到关系数据库...

☕【Java技术指南】「并发编程专题」Fork/Join框架基本使用和原理探究(原理篇)

ForkJoin线程池框架回顾 ForkJoin框架其实就是一个线程池ExecutorService的实现,通过工作窃取(work-stealing)算法,获取其他线程中未完成的任务来执行。 可以充分利用机器的多处理器优势,利...

Java技术开发专题系列之【Guava RateLimiter】针对于限流器的入门到精通(含源码分析介绍)

Guava包中限流实现分析 RateLimiter 之前的文章中已经介绍了常用的限流算法,而google在Java领域中使用Guava包中的限流工具进行服务限流。 回顾使用案例 Google开源工具包Guava提供了限流工具...

Java技术开发专题系列之【Guava RateLimiter】针对于限流器的入门到精通(含实战开发技巧)

并发编程的三剑客 在开发高并发系统时有三剑客:缓存、降级和限流。 缓存 缓存的目的是提升系统访问速度和增大系统处理容量。 降级 降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽...

☕【Java技术指南】「并发编程专题」CompletionService框架基本使用和原理探究(基础篇)

前提概要 在开发过程中在使用多线程进行并行处理一些事情的时候,大部分场景在处理多线程并行执行任务的时候,可以通过List添加Future来获取执行结果,有时候我们是不需要获取任务的执行结果...

☕【Java技术指南】「并发编程专题」Fork/Join框架基本使用和原理探究(基础篇)

前提概述 Java 7开始引入了一种新的Fork/Join线程池,它可以执行一种特殊的任务:把一个大任务拆成多个小任务并行执行。 我们举个例子:如果要计算一个超大数组的和,最简单的做法是用一个循...

☕【Java技术指南】「难点-核心-遗漏」Java线程状态流转及生命周期的技术指南(知识点串烧)!

前提介绍 本章主要介绍相关线程声明周期的转换机制以及声明周期的流转关系以及相关AQS的实现和相关的基本原理,配合这相关官方文档的中英文互译的介绍。 线程状态流转及生命周期 当线程被创建...

☕【Java技术指南】「TestNG专题」单元测试框架之TestNG使用教程指南(下)

承接上文 ☕【Java技术指南】「TestNG专题」单元测试框架之TestNG使用教程指南(上),继续开展我们的下篇的TestNG的技术特性。 分组测试 分组测试即为使用group,如果你使用xml的话就是里边...

☕【Java技术指南】「TestNG专题」单元测试框架之TestNG使用教程指南(上)

TestNG介绍 TestNG是Java中的一个测试框架, 类似于JUnit 和NUnit, 功能都差不多, 只是功能更加强大,使用也更方便。 详细使用说明请参考官方链接:https://testng.org/doc/index.html Tes...

☕【Java技术指南】「OpenJDK专题」想不想编译属于你自己的JDK呢?(Windows环境)

Win10下编译OpenJDK8 编译环境 Windows10专业版64位; 编译前准备 Tip: 以下软件的安装和解压目录尽量不要包含中文或空格,不然可能会出现问题 安装 Visual Studio 2010 Professional 在win...

☕【Java技术指南】「编译器专题」重塑认识Java编译器的执行过程(常量优化机制)!

问题概括 静态常量可以再编译器确定字面量,但常量并不一定在编译期就确定了, 也可以在运行时确定,所以Java针对某些情况制定了常量优化机制。 常量优化机制 给一个变量赋值,如果等于号的右...

Java技术开发专题系列之【Guava Collections】实战使用相关Guava不一般的集合框架

Google Guava Collections 使用介绍 简介 Google Guava Collections 是一个对 Java Collections Framework 增强和扩展的一个开源项目。由于它高质量 API 的实现和对 Java特性的充分利用,使得...

☕【Java技术指南】「并发原理专题」AQS的技术体系之CLH、MCS锁的原理及实现

背景 SMP(Symmetric Multi-Processor) 对称多处理器结构,它是相对非对称多处理技术而言的、应用十分广泛的并行技术。 在这种架构中,一台计算机由多个CPU组成,并共享内存和其他资源,所有的...

☕【Java技术指南】「开发实战专题」Lombok插件开发实践必知必会操作!

前言 在目前众多编程语言中,Java 语言的表现还是抢眼,不论是企业级服务端开发,还是 Andorid 客户端开发,都是作为开发语言的首选,甚至在大数据开发领域,Java 语言也能占有一席之地,如H...

☕【Java技术指南】「编译器专题」深入分析探究“静态编译器”(JAVA\IDEA\ECJ编译器)是否可以实现代码优化?

技术分析 大家都知道Eclipse已经实现了自己的编译器,命名为 Eclipse编译器for Java (ECJ)。 ECJ 是 Eclipse Compiler for Java 的缩写,是 JavaTM 认可的 Java 编译工具(类似 javac)。可以...

☕【Java技术指南】「编译器专题」重塑认识Java编译器的执行过程(消除数组边界检查+公共子表达式)!

前提概要 Java的class字节码并不是机器语言,要想让机器能够执行,还需要把字节码翻译成机器指令。这个过程是Java虚拟机做的,这个过程也叫编译。是更深层次的编译。 在编译原理中,把源代码...

☕【Java技术指南】教你如何使用【精巧好用】的DelayQueue(延时队列)

延时队列前提 定时关闭空闲连接:服务器中,有很多客户端的连接,空闲一段时间之后需要关闭之。 定时清除额外缓存:缓存中的对象,超过了空闲时间,需要从缓存中移出。 实现任务超时处理:在...

没有更多内容

加载失败,请刷新页面

返回顶部
顶部