




















栏目持续更新中
Java基础是全站的开篇,但是这个系列只会整理Java基础类库的使用和最新特性以及一些底层原理和源码解读,不会赘述JDK的安装配置和面向对象等最基础的内容。

待续
待续
在Java中,和IO有关的操作封装在java.io和java.nio中,传统IO(java.io)是以流的形式实现输入输出操作的,还有基于通道和缓冲区的NIO(java.nio)
I/O操作,有阻塞和非阻塞之分:
也有同步和异步之分:
阻塞非阻塞和同步异步,描述的阶段和描述的事情是不同的,因此可以自由组合,Java语言将其组合为分为BIO,NIO,和AIO三种不同的IO,与Linux的IO模型(详见:浅谈Linux(Unix)的I/O模型)对应的话,BIO对应的是Blocking I/O
BIO
同步的,阻塞的IO,位于java.io包下,是Java的传统IO,基于流,IO流的分类方式有很多,按照方向分为输入流和输出流,按照数据传输单位又能分为字节流和字符流
NIO
同步的,非阻塞的IO,位于java.nio包下
AIO
异步的,非阻塞的IO,也位于java.nio包下
本部分主要讲述了使用Java语言来实现多线程的程序,包括线程的创建方式,线程基本方法的使用,多线程操作共享数据导致的安全问题以及死锁现象的原因和避免死锁,多线程运行过程中的协作和通信机制以及调用各种线程的方法时线程状态和生命周期的改变等。
| 序号 | 文章名 | 概述 |
|---|---|---|
| 1 | Java的线程和常见方法 | 进程和线程,并发和并行,线程的创建和常见方法 |
| 2 | Java线程安全和同步机制 | 多线程导致的问题,线程的同步机制,死锁 |
| 3 | Java线程间的通信机制 | 线程的通信,等待唤醒机制wait/notify |
| 4 | Java线程的状态 | 不同线程状态之间的转换过程 |
| 5 | volatile作用分析 | volatile关键字的作用,可见性、原子性和重排序 |
JUC就是Java在并发编程中使用的工具包java.util.concurrent的简称,包括java.util.concurrent,java.util.concurrent.atomic,java.util.concurrent.locks等,起始于JDK1.5,是Java语言中增强版的多线程和高并发工具,拥有更加强大的多线程实现,本章内容会介绍些JUC中常用的并发编程工具类及其实现原理,需要在理解了第3.5小节的线程一章的基础上学习
主要涉及:
java.util.concurrent.locks.Lock,java.util.concurrent.locks.Conditionjava.util.concurrent.locks.ReadWriteLockjava.util.concurrent.CompletableFuture,java.util.concurrent.FutureTask,java.util.concurrent.Callablejava.util.concurrent.BlockingQueuejava.util.concurrent.ExecutorServicejava.util.concurrent.ForkJoinPool,java.util.concurrent.ForkJoinTask等 java.util.concurrent.CopyOnWriteArrayList,java.util.concurrent.ConcurrentHashMap,java.util.concurrent.CopyOnWriteArraySet等java.util.concurrent.CountDownLatch,java.util.concurrent.CyclicBarrier,java.util.concurrent.Semaphore等java.util.concurrent.atomic.AtomicInteger,java.util.concurrent.atomic.AtomicReference待续
| 序号 | 文章名 | 概述 |
|---|---|---|
| 1 | Java实现LDAP登录 | 使用Java与LDAP进行交互 |
| 序号 | 文章名 | 概述 |
|---|---|---|
| 1 | Java单例 | Java中单例模式的几种实现形式 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。