try{
 // 可能发⽣异常的代码
}catch(AExceptionName e){
 //出异常的时候处理
}catch(BExceptionName e){
}fianall{
}
	一个try代码块后面跟多个catch代码块的情况就叫多重捕获
try{
 // 可能发⽣异常的代码
}catch(ExceptionName1 e1){
 //出异常的时候处理
}catch(ExceptionName2 e2){
 //出异常的时候处理
}
	代码中发生异常,异常被抛给第一个catch块,如果不匹配则继续往下一个catch进行传递
try{
 // 可能发⽣异常的代码
}catch(ExceptionName1 e1){
 //出异常的时候处理
}finally{
 //肯定执⾏的代码
}
	或者
try{
 // 可能发⽣异常的代码
}finally{
 //肯定执⾏的代码
}
	例子
public class Main {
 public static void readChar() throws IOException,RemoteException {
        int input = System.in.read(); 
 }
}
	语法
throw new ExceptionName("异常信息");
	例子
throw new IOException("File not found");
	当抛出异常被检查的异常,我们必须使用try-catch块来处理它,或者在方法声明中使用throws子句继续往外抛
例子
public class BaseException extends Exception {
    private String errorMessage;
    private String errorCode;
    public BaseException(String errorCode, String errorMessage) {
        super(errorMessage);
        this.errorCode = errorCode;
        this.errorMessage = errorMessage;
    }
    public String getErrorMessage() {
        return errorMessage;
    }
    public String getErrorCode() {
        return errorCode;
    }
    public void setErrorCode(String errorCode) {
        this.errorCode = errorCode;
    }
    public void setErrorMessage(String errorMessage) {
        this.errorMessage = errorMessage;
    }
}