博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自定义异常
阅读量:3677 次
发布时间:2019-05-21

本文共 906 字,大约阅读时间需要 3 分钟。

用户定义异常是通过扩展Exception类来创建的。这种异常类可以包含一个"普通"类所包含的任何东西。下面就是一个用户定义异常类例子,它包含一个构造函数、几个变量以及方法

请看下例:

class TestMyException {	public static void main(String[] args) {		ABC abc = new ABD();// ABD 是 ABC的子类		try {			abc.a(5);		} catch (EA e) {			e.test();		}	}}

创建自己的运行时异常,如果改成Exception,就是创建编译时的异常了,编译的时候就应该对异常处理。

class EA extends RuntimeException {	String s;	public EA(String s) {		this.s = s;	}	public EA() {	}	public void test() {		System.out.println(s);	}};class EA1 extends EA // 创建自己的异常的子异常{	public EA1(String s) {		super(s);	}};class EA2 extends EA // 创建自己的异常的子异常{	public EA2(String s) {		super(s);	}};class ABC {	public void a(int i) {		if (i < 0)			System.out.println("normal");		else			throw new EA("no normal");	}};class ABD extends ABC {	public void a(int i) {		if (i < 0)			System.out.println("dfsdafds");		else if (i == 0)			throw new EA1("参数 == 0");		else			throw new EA2("参数 > 0");	}};

运行的结果为:

 参数 > 0

更多

转载地址:http://ursbn.baihongyu.com/

你可能感兴趣的文章
LeetCode142. 环形链表 II(快慢指针)
查看>>
删数【DP】
查看>>
jzoj解压字符串【DFS】
查看>>
Python3的安装(Ubuntu的Linux中)
查看>>
Linux命令(常用整理,未完待续)
查看>>
编码问题的故事(ANSI、ASCII、Unicode,UTF8和UTF16)
查看>>
python2和python3解包区别(以及eval函数使字符串转列表)
查看>>
Python算法和数据结构(一)——collections模块
查看>>
剑指offer(4)——二维数组查找(python 实现)
查看>>
MySQL的安装(Windows)
查看>>
你真的知道a,b = b,a是怎么实现的吗?(python交换逻辑)
查看>>
剑指offer(3)——寻找数组中的重复数
查看>>
python中的lambda匿名函数
查看>>
我最欣赏的男人
查看>>
「SQL数据分析系列」12. 事务
查看>>
c语言数据结构共享堆栈
查看>>
数据库学习笔记之数据库系统的概述
查看>>
用户设计体验概述
查看>>
python抢红包列表对数据操作的练习题
查看>>
PATpython练习题帅到没朋友
查看>>