开发者社区> 问答> 正文

通过继承Exception类来实现自己的异常类。并使用try-catch来捕获这个异常

通过继承Exception类来实现自己的异常类。并使用try-catch来捕获这个异常

展开
收起
珍宝珠 2020-02-13 18:28:27 1724 0
1 条回答
写回答
取消 提交回答
  • class MyException extends Exception {
    	private static final long serialVersionUID = 1L;
     
    	public MyException() {
    	}
     
    	public MyException(String msg) {
    		super(msg);
    	}
     
    	public MyException(String msg, int x) {
    		super(msg);
    		i = x;
    	}
     
    	public int val() {
    		return i;
    	}
     
    	private int i;
    }
     
    public class DemoException {
    	/**
    	 *方法说明:使用MyException类中默认的构造器
    	 */
    	public static void a() throws MyException {
    		System.out.println("Throwing MyException from a()");
    		throw new MyException();
    	}
     
    	/**
    	 *方法说明:使用MyException类中带信息的构造器
    	 */
    	public static void b() throws MyException {
    		System.out.println("Throwing MyException from b()");
    		throw new MyException("Originated in b()");
    	}
     
    	/**
    	 *方法说明:使用了MyException中有编码的构造器
    	 */
    	public static void c() throws MyException {
    		System.out.println("Throwing MyException from c()");
    		throw new MyException("Originated in c()", 47);
    	}
     
    	public static void main(String[] args) {
    		try {
    			a();
    		} catch (MyException e) {
    			e.getMessage();
    		}
    		try {
    			b();
    		} catch (MyException e) {
    			e.toString();
    		}
    		try {
    			c();
    		} catch (MyException e) {
    			e.printStackTrace();
    			System.out.println("error code: " + e.val());
    		}
    	}
    } // end :)
    
    2020-02-13 18:28:46
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载