Java 中的 CyclicBarrier 多线程同步机制使用方法
CyclicBarrier 是一种同步机制,它能够对处理一些算法的线程实现同步。换句话讲,它就是一个所有线程必须等待的一个栅栏,直到所有线程都到达这里,然后所有线程才可以继续做其他事情。
2017-08-21
手把手教你 Fork/Join 并发处理
ForkJoinPool 让我们可以很方便地把任务分裂成几个更小的任务,这些分裂出来的任务也将会提交给 ForkJoinPool。任务可以继续分割成更小的子任务,只要它还能分割。分叉和合并原理包含两个递归进行的步骤。两个步骤分别是分叉步骤和合并步骤。
2017-08-09
手把手教你使用 Java 8 Stream 收集器
前文《Java 8 | Stream 简介与常用方法》介绍了 collect 方法由 Stream 里的值生成一个列表,实际上这里就是使用了收集器来返回一个 List。收集器是一种通用的、从流中生成复杂值的结构。collect 方法使用收集器来完成复杂的操作,方法定义如下。
2017-08-07
Java 8 | Stream 高级用法
前面几篇文章简单介绍了 Stream 的用法,今天整理一下部分高级用法。
2017-08-03
Java 8 | Stream 常用函数接口
前文介绍了 Java 8 新增的 Stream 及其使用方式。本文汇总一下 Stream 各个方法经常用到的函数接口。
2017-08-02
Java 8 | 接口的静态方法和默认方法
在 Java 8 之前,接口只能定义抽象方法,而不能有方法的实现,只有抽象类才能同时拥有抽象方法和非抽象方法。从 Java 8 开始,接口新增了静态方法和默认方法,本文主要讨论接口新增的这两种方法。
2017-08-01
Java 8 | Stream 简介与常用方法
Java 8 为我们带来了 Stream。Stream 是用函数式编程方式在集合类上进行复杂操作的工具。上面的统计代码可以基于 Stream 改写成如下代码。可以看到,代码中几乎只有比较和统计操作,代码简单,逻辑清晰。
2017-07-31
Java 8 lambda 表达式
lambda 表达式是 Java 8 支持的新特性之一。通过 lambda 表达式,Java 具备了函数式编程的能力。相对于 Haskell、Erlang 等语言 Java 的函数式支持仍然较为薄弱,但是也能简化代码的开发和阅读。
2017-07-29
Java多态的底层原理
作为一门面向对象语言,Java 拥有封装、继承、多态三大特性。多态就是允许不同类的对象对同一消息做出响应。基于多态,可以消除一些类型耦合关系,实现可替换、可扩充。Java 中使用多态特性的方法主要有,实现一个接口,实现抽象类的一个方法,覆盖父类的一个方法。
2017-07-16
JVM 常用垃圾回收算法
Java 虚拟机提供了垃圾回收功能,把程序员从内存管理的工作中解放出来,一定程度上提高了程序开发效率,降低了内存溢出发生的概率。垃圾回收涉及到很多算法的细节,并且不同的虚拟机实现会有细节上的差异,本文仅整理描述几种常用算法的思想。
2017-07-09

© 2016 - 2022 chengxuzhixin.com All Rights Reserved.

浙ICP备2021034854号-1    浙公网安备 33011002016107号