第七章《Java的异常处理》第5节:自定义异常
admin
2024-02-15 23:19:54
0

前面各小节中所见到的各种异常都来自于Java基础类库。如果基础类库中所定义的异常类还不能满足编程需要,程序员可以自己定义异常类。自定义的异常类必须是Throwable的直接或间接子类,否则编译器不认为它是异常类的家族成员,也不能用throw关键字抛出这个类的对象。实际开发中,程序员自己定义的异常类一般都会以Exception或它的子类作为父类。当自定义异常类继承了Exception或它的子类后,还可以根据需要重写父类的中的各个方法。最常被重写的方法就是getMessage()方法,这个方法的返回值是一个字符串对象,它表示异常信息。自定义异常类重新定义getMessage()方法的返回值,实质上就是重新定义了异常类信息。另外,当定义好一个异常类后,还需要设定抛出这个异常的触发条件,这样虚拟机就知道在什么情况下抛出这个异常。

为方便读者深入理解自定义异常类的用法,此处举一个例子:假设我们通过setSpeed()方法为某一游戏中的人物设定设置行进速度,如果设置的行进速度超过了30公里/小时,就认为速度值不合理,并且希望在这种情况下能抛出一个异常。下面的【例07_13】就展示了如何实现这一需求。

【例07_13 自定义异常】

MyException.java

public class MyException extends RuntimeException{
    public String getMessage() {
        

相关内容

热门资讯

7.15上海游戏峰会:解码全球... 2025年7月15日,由上海市新闻出版局指导、上海市网络游戏行业协会主办的上海游戏精英峰会暨上海游戏...
新华全媒头条|共绘雪域高原同心... (配本社同题文字稿) 孩子们在位于西藏那曲市色尼区南部新城的“温暖嘉·色尼城市书房”看书(202...
小学楼道里涂鸦墙用水粉颜料可以... 小学楼道里涂鸦墙用水粉颜料可以吗,墙上是油漆涂过的不可以,用水粉一擦就掉了,用丙烯颜料,和水粉感觉差...
有什么科幻小故事,短一些? 有什么科幻小故事,短一些? 遇见外星人一天,我在公园里散步。突然,一个像盘子一样发着许多光的东西...
幼儿园安吉室外投放哪些材料 幼儿园安吉室外投放哪些材料幼儿园安吉室外投放材料滚筒、积木、长板、木箱、梯子、沙水、锅、碗、瓢、盆、...
爱情的十字路口我该怎么选择? 爱情的十字路口我该怎么选择?真爱掌握在你自己手中!爱他就努力争取,不顾一切!还不是很爱他,那就等等,...
有没有和《恶魔狂想曲之明日骄阳... 有没有和《恶魔狂想曲之明日骄阳》差不多精彩的小说?女主角很多,个性鲜明,主角多情但不滥情,富于正义文...
功利主义是否认为道德应该是一种... 功利主义是否认为道德应该是一种绝对的命令?最源头的定义是边沁的观点,使所有人的快乐最大化。之后有缪尔...
什么是CC猫啊 什么是CC猫啊CC是一只可爱活泼的猫猫,因为诞生于沪江网校所以全称:沪江网校CC猫。CC猫常常出没于...
美剧迷失第三季好看吗? 美剧迷失第三季好看吗?个人觉得,迷失第一季还不错,很惊异.越往后看越没意思.相信我你会越看越迷失的....
求推荐一些奇幻和爱情主题的动漫 求推荐一些奇幻和爱情主题的动漫刀剑神域 强烈推荐妖精的尾巴哈尔的移动城堡~~强烈推荐刀剑神域!!!...
张晓风的这篇柳运用什么的修辞手... 张晓风的这篇柳运用什么的修辞手法张晓风的这片《柳》运用了比喻,对比的修辞手法。希望我的解答对我有帮助...
我想在手机上看童话书,请问在哪... 我想在手机上看童话书,请问在哪里找?我记得有类似的书,是不是一本红皮的?那个是有点类似杂志或者丛书的...
远古是一个怎样的世界 远古是一个怎样的世界漫漫四十多亿年哪,多长的时间呀,搞不好,以前主宰地球的物种的科技比我们还牛些的!...
有色没胆 有胆没色 有色没胆 有胆没色这两种男人有什么区别?哦这个.有色就是好色也不敢动手.有胆就是胆大不好色.或者是自...
华胥引中君伟的结局 华胥引中君伟的结局君玮最后是和苏仪在一起了。七七微段子里提到的慕言和阿拂家的孩子其实是君玮和苏仪的然...
带烁字的男孩名字 带烁字的男孩名字带烁字的男孩名字,用烁字起名烁(shuò):烁表示光亮、烁亮、烁烁。 繁体:烁;部首...
《披荆斩棘的哥哥》正在热播,看... 《披荆斩棘的哥哥》正在热播,看完这档节目后你有什么观后感?看完这档节目之后,我觉得挺好的,这次的节目...
我女儿的生辰八字:壬午年 丙... 我女儿的生辰八字:壬午年 丙午月 丙寅日 庚寅时 (2002年6月27日农历五月十七日早上...