在我的理解里自定义异常就是把一些符合JVM逻辑但是不符合业务逻辑的东东自己拿出来定义为异常。当然也包括将JVM抛出的内容用自己的方式表现出来。
package exception;
class MyException2 extends RuntimeException{
public MyException2() {
super();
}
/**
*
* @param message 表示异常描述 getMesasge();
*/
public MyException2(String message) {
super(message);
}
}
class MyException1 extends Exception{
public MyException1() {
super();
}
/**
*
* @param message 表示异常描述 getMesasge();
*/
public MyException1(String message) {
super(message);
}
}
public class MyExceptionDemo {
public static void divide(int a, int b){
if(b == 0){
throw new MyException2("亲,除数不能为0");
}
}
public static void main(String[] args) {
try{
divide(1,0);
}catch(Exception e){
String msg = e.getMessage();
System.out.println("msg= " + msg);
}
}
}