SyncFailedException无引入包
继承自IOException
该类的类头注释如下:
Signals that a sync operation has failed.
大意如下:
标志同步操作失败
该类含有如下的成员变量:
序列化ID
private static final long serialVersionUID = -2353342684412443330L;
该类含有如下的成员方法:
构造函数(传入错误信息
public SyncFailedException(String desc) { super(desc); }
UncheckIOException引入了
import java.util.Objects;
继承自RuntimeException
该类的类头注释如下:
* Wraps an {@link IOException} with an unchecked exception.
大意如下:
用未检查的异常对IO异常进行封装
该类含有如下的成员变量:
序列化ID
private static final long serialVersionUID = -8134305061645241065L;
该类含有如下的成员方法:
构造函数(错误信息和需要封装的IO异常
public UncheckedIOException(String message, IOException cause) { super(message, Objects.requireNonNull(cause)); }
构造函数(不含错误信息,仅封装IO异常
public UncheckedIOException(IOException cause) { super(Objects.requireNonNull(cause)); }
获得错误原因
public IOException getCause() { return (IOException) super.getCause(); }
从异常流中读取出对象
private void readObject(ObjectInputStream s) throws IOException, ClassNotFoundException { s.defaultReadObject(); Throwable cause = super.getCause(); if (!(cause instanceof IOException)) throw new InvalidObjectException("Cause must be an IOException"); }
UnSupportedEncodingException无引入包
继承自IOException
该类的类头注释如下:
* The Character Encoding is not supported.
大意如下:
不支持该字符编码方式
该类含有如下的成员变量:
序列化ID
private static final long serialVersionUID = -4274276298326136670L;
该类含有如下的成员方法:
默认构造函数
public UnsupportedEncodingException() { super(); }
包含错误信息的构造函数
public UnsupportedEncodingException(String s) { super(s); }
以上三个异常类除了UncheckIOException都仅含有序列化ID和构造函数,具体用途即是提示类头注释中的信息。UncheckIOException与其他异常类有些不同,额外包括了内部IOException错误原因的获取方法和流中异常的读取。