java.nio包的分析(三)---Charset的理解

       前面分析完2个主要的包类,现在我们来揭开Java.nio的最后块神秘的知识点,Charset编码类,他的功能主要是实现字节与Unicode之间的转码转换。同样先来看看他的包结构。,结构比较单一和简单。

java.nio包的分析(三)---Charset的理解_第1张图片

里面一个最最主要的类就是Charset类,看看里面有哪些变量 

java.nio包的分析(三)---Charset的理解_第2张图片

他的构造函数为

 java.nio包的分析(三)---Charset的理解_第3张图片

 Charset类中也有缓存字节本身的类型

java.nio包的分析(三)---Charset的理解_第4张图片

 我们来看看他最主要的一个功能encode编码是如何实现的

java.nio包的分析(三)---Charset的理解_第5张图片

 可以从上图中我们知道编码调用的方法其实是CharsetEncoder的encode方法,然后我们往里找

java.nio包的分析(三)---Charset的理解_第6张图片

 再来其中核心的encode方法,方法比较长

java.nio包的分析(三)---Charset的理解_第7张图片

 decode与此类似,就不介绍了,下面我们看看其中涉及到一个CoderResult结果类
java.nio包的分析(三)---Charset的理解_第8张图片

 好了,还有最后一个提供者类,在Charset.spi中,

java.nio包的分析(三)---Charset的理解_第9张图片

具体什么时候用上,我好像没看到。至此java.nio分析到此结束了,希望能给大家带来收获,不过有些地方我也是比较难以理解的 

你可能感兴趣的:(java,nio,开发语言)