b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

java语言程序设计(13)

电脑杂谈  发布时间:2016-12-30 16:06:08  来源:网络整理

但是这条规则有个特例。一个继承自Exception名为RuntimeException的子类,也就是运行时异常,不受上述规则的限制。下面的代码完全能编译,只不过调用之后在运行时会抛出异常。

void ex(){

throw new RuntimeException();

}

14、throw和thrwos关键字。throw用在方法体中抛出异常,后面是一个具体的异常对象。throws用在方法参数列表括号的后面,用来声明此方抛出的异常种类,后面跟着一个异常类。

15、非检查异常。RuntimeException、Error以及它们的子类都是非检查异常,不要求定义或处理非检查异常。Java2类库中有很多方法抛出检查异常,因此会常常编写异常处理程序来处理不是你编写的方法产生的异常。这种机制强制开发人员处理错误,使得Java程序更加健壮,安全。

16、自定义异常类型。觉得现有的异常无法描述你想抛出的异常,ok!Java允许你自定义异常类型,只需要继承Exception或者它的子类,然后换上有个性的名字。

class NotEnoughMoney extends Exception {

public NotEnoughMoney() {}

public NotEnoughMoney(String msg) { super(msg); }

}

希望大家在生活里不要抛出类的异常。

17、重新抛出异常。一个很无聊的话题,纯粹的语法研究,实际意义不大。当catch子句捕获到异常之后可以重新抛出,那么它所在的方法必须声明该异常。

void ex() throws Exception{

try {

throw new Exception();

}

catch (Exception mex) {

throw me;

}

}

18、异常处理机制的效率。待补充……

19、终止与恢复模型。异常处理理论上有两种模型:

一、终止模型。错误很关键且无法挽回,再执行下去也没意义,只能中止。“罗密欧,我们分手吧!”“好吧,朱丽叶!”

二、恢复模型。经过错误修正重新尝试调用原来出问题的方法。“罗密欧,我们分手吧!”“朱丽叶,我错了!请再原谅我一次吧!”“好的,再原谅你最后一次!”

显然我们更喜欢恢复模型,但在实际中,这种模式是不易实现和维护的。

例子:用户输入了非法的字符,分别按照两种模式处理

一、终止模型。输出出错信息而已,一旦用户手一抖一花你的代码就崩溃了

double number;

String sNumber = "";

try {

BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));

sNumber = bf.readLine();

number = Double.parseDouble(sNumber);

} catch (IOException ioe) {

System.err.println("some IOException");

} catch (NumberFormatException nfe) {

System.err.println(sNumber " is Not a legal number!");

}

//System.out.println(number);

二、恢复模型。小样!不输入正确的数据类型就别想离开!

double number = 0;


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23953-13.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 谷晟
      谷晟

      这就中国的悲哀

      • 布咸
        布咸

        美国人的行动就是来挑战这种所谓的十二海里领海权

    • 张霞
      张霞

      别说你双降就八连降我也只能喝粥

    • 张文姬
      张文姬

      看看能把小米骂倒吗

    热点图片
    拼命载入中...