|
|
本帖最后由 pansong291 于 2019-4-8 12:31 编辑
上篇:48.异常(二)---面向对象
下篇:50.包---面向对象
注意:如果你的回复只是“感谢分享”、“辛苦了”之类的与教程内容无关的字眼,还请不要回复本帖,谢谢合作!!!
注意:如果你的回复只是“感谢分享”、“辛苦了”之类的与教程内容无关的字眼,还请不要回复本帖,谢谢合作!!!
注意:如果你的回复只是“感谢分享”、“辛苦了”之类的与教程内容无关的字眼,还请不要回复本帖,谢谢合作!!!
异常的一些使用细节
1). 一个方法被覆盖时,覆盖它的方法必须扔出相同的异常或异常的子类。
2). 如果父类扔出多个异常,那么重写(覆盖)方法必须扔出那些异常的一个子集,也就
是说,不能扔出新的异常。
Java 引入异常的好处
以前,程序语言要求程序员使用函数调用的返回值来判断执行情况,这种方式有很多缺
陷,因为对许多可能出现的异常情况需要不同程度的了解。有些语言使用一个全局变量来保
存异常状态,但这种方式是不够的,因为后面的异常会在前一个异常还未处理之前就覆盖了
那个全局变量的值。而且,更不可取的是,有些 C 程序借助 goto 语句来处理异常。Java 没有
goto 语句,它保留 goto 关键字只是为了让程序员不要搞混淆。Java 利用带标号的 break 和
continue 语句来取代 goto。Java 中严格定义的异常处理机制使 goto 没有再存在的必要,取
消这种随意跳转的语句有利于优化代码以及保持系统的强健性和安全性。
Java 的异常是一个出现在代码中的描述异常状态的对象。每当出现一个异常情况,就创
建一个异常对象并转入引起异常的方法中,这些方法根据不同的类型来捕捉异常,并防止由
于异常而引起程序崩溃,还能在方法退出前执行特定的代码段。
作者感受最深的是:Java 异常强制我们去考虑程序的强健性和安全性,很多人在写程
序时,总是想当然地认为,自己的程序会在一种理想的环境下运行,譬如,不会碰到硬盘空
间不够的情况,不会碰到网络突然断线的情况,不会碰到用户输入非法数据的情况,不会……
等等,通常都懒得去写处理这些意外情况的代码。一旦有个万一,碰到上面的意外情况,程
序就只有崩溃的份儿了,就象许多 Windows 用户经常见到的情况,一个大红框冒出来后,程
序就结束了,刚才做的工作还没保存呢,这些用户好不懊恼,气得直骂那个该死的、做这个
软件的人!Java 对可能发生这些的意外情况的方法都用 throws 关键子进行了标记,程序员
就不得不去编写处理意外的代码,想偷点懒都不成。使用 Java 语言编程,能使我们养成良
好的编程风格!
上篇:48.异常(二)---面向对象
下篇:50.包---面向对象 |
|