table of Contents
Source code analysis instructions
Character stream-output stream
Source code analysis instructions
This source code analysis is basically based on the jdk version of JAVA_VERSION="1.8.0_112"
Source code analysis of some other types, see https://blog.csdn.net/xushiyu1996818/article/details/91983557
IO series
Byte stream-input stream
InputStream https://blog.csdn.net/xushiyu1996818/article/details/109306258
ByteArrayInputStream https://blog.csdn.net/xushiyu1996818/article/details/109327976
FileInputStream https://blog.csdn.net/xushiyu1996818/article/details/109357777
SequenceInputStream https://blog.csdn.net/xushiyu1996818/article/details/109384825
FilterInputStream https://blog.csdn.net/xushiyu1996818/article/details/109388600
BufferedInputStream https://blog.csdn.net/xushiyu1996818/article/details/109511007
DataInputStream https://blog.csdn.net/xushiyu1996818/article/details/109525211
PushbackInputStream https://blog.csdn.net/xushiyu1996818/article/details/109531048
PipedInputStream https://blog.csdn.net/xushiyu1996818/article/details/109766407
Byte stream-output stream
OutputStream https://blog.csdn.net/xushiyu1996818/article/details/109533362
ByteArrayOutputStream https://blog.csdn.net/xushiyu1996818/article/details/109570862
FileOutputStream https://blog.csdn.net/xushiyu1996818/article/details/109576960
FilterOutputStream https://blog.csdn.net/xushiyu1996818/article/details/109577452
BufferedOutputStream https://blog.csdn.net/xushiyu1996818/article/details/109579594
PrintStream https://blog.csdn.net/xushiyu1996818/article/details/109724299
PipedOutputStream https://blog.csdn.net/xushiyu1996818/article/details/109766133
Character stream-input stream
Reader https://blog.csdn.net/xushiyu1996818/article/details/109592893
CharArrayReader https://blog.csdn.net/xushiyu1996818/article/details/109598993
StringReader https://blog.csdn.net/xushiyu1996818/article/details/109599106
InputStreamReader https://blog.csdn.net/xushiyu1996818/article/details/109613789
StreamDecoder https://blog.csdn.net/xushiyu1996818/article/details/109616946
FileReader https://blog.csdn.net/xushiyu1996818/article/details/109613896
BufferedReader https://blog.csdn.net/xushiyu1996818/article/details/109637776
FilterReader https://blog.csdn.net/xushiyu1996818/article/details/109639239
PushbackReader https://blog.csdn.net/xushiyu1996818/article/details/109645513
Scanner https://blog.csdn.net/xushiyu1996818/article/details/111924034
Character stream-output stream
Writer https://blog.csdn.net/xushiyu1996818/article/details/109645722
CharArrayWriter https://blog.csdn.net/xushiyu1996818/article/details/109647524
StringWriter https://blog.csdn.net/xushiyu1996818/article/details/109675301
FileWriter https://blog.csdn.net/xushiyu1996818/article/details/109715953
OutputStreamWriter https://blog.csdn.net/xushiyu1996818/article/details/109715659
StreamEncoder https://blog.csdn.net/xushiyu1996818/article/details/109788673
BufferedWriter https://blog.csdn.net/xushiyu1996818/article/details/109719885
PrintWriter https://blog.csdn.net/xushiyu1996818/article/details/109741098
NIO series
NIO basics
ByteOrder https://blog.csdn.net/xushiyu1996818/article/details/110184985
The difference and basic use of io, nio, aio https://blog.csdn.net/xushiyu1996818/article/details/106617293
Buffer
Buffer https://blog.csdn.net/xushiyu1996818/article/details/109840889
ByteBuffer https://blog.csdn.net/xushiyu1996818/article/details/110184205
HeapByteBuffer https://blog.csdn.net/xushiyu1996818/article/details/110194518
HeapByteBufferR https://blog.csdn.net/xushiyu1996818/article/details/110195307
MappedByteBuffer https://blog.csdn.net/xushiyu1996818/article/details/110225201
DirectByteBuffer https://blog.csdn.net/xushiyu1996818/article/details/110387773
CharBuffer https://blog.csdn.net/xushiyu1996818/article/details/110391228
HeapCharBuffer https://blog.csdn.net/xushiyu1996818/article/details/110391778
DirectCharBufferU/S https://blog.csdn.net/xushiyu1996818/article/details/110424054
ByteBufferAsCharBufferB/L https://blog.csdn.net/xushiyu1996818/article/details/110436964
Channel
Channel https://blog.csdn.net/xushiyu1996818/article/details/110439478
ReadableByteChannel,WritableByteChannel,ByteChannel https://blog.csdn.net/xushiyu1996818/article/details/110480369
SeekableByteChannel https://blog.csdn.net/xushiyu1996818/article/details/110489782
ScatteringByteChannel,GatheringByteChannel https://blog.csdn.net/xushiyu1996818/article/details/110490217
InterruptibleChannel , AbstractInterruptibleChannel https://blog.csdn.net/xushiyu1996818/article/details/110532871
SelectableChannel https://blog.csdn.net/xushiyu1996818/article/details/110639241
AbstractSelectableChannel https://blog.csdn.net/xushiyu1996818/article/details/110653551
FileChannel https://blog.csdn.net/xushiyu1996818/article/details/111379141
FileChannelImpl https://blog.csdn.net/xushiyu1996818/article/details/112616374
NetworkChannel https://blog.csdn.net/xushiyu1996818/article/details/111927152
ServerSocketChannel https://blog.csdn.net/xushiyu1996818/article/details/111948477
SocketChannel https://blog.csdn.net/xushiyu1996818/article/details/111985479
MulticastChannel https://blog.csdn.net/xushiyu1996818/article/details/111992903
DatagramChannel https://blog.csdn.net/xushiyu1996818/article/details/112009053
Selector
Selector https://blog.csdn.net/xushiyu1996818/article/details/110820876
AbstractSelector https://blog.csdn.net/xushiyu1996818/article/details/112018654
SelectionKey https://blog.csdn.net/xushiyu1996818/article/details/110820980
AbstractSelectionKey https://blog.csdn.net/xushiyu1996818/article/details/112010868
SelectorProvider https://blog.csdn.net/xushiyu1996818/article/details/111206130