JAVA抛出异常的问题

J2EE 码拜 6年前 (2015-04-19) 527次浏览 0个评论

  RT ,我今天刚看完异常处理的那一章的书,书上有句话这么写JAVA抛出异常的问题
大意是说异常处理的方式有一种是在声明main method 的时候同时加上throws IOException异常交给JAVA自己去处理
然后我不知道JAVA自己会变成什么样啊,就写了个灰常简单的IOException的异常代码
JAVA抛出异常的问题
结果是
JAVA抛出异常的问题
这个和不用main抛出异常没一点区别吧?肿么个意思,没区别我为什么要多写这么一句?

JAVA抛出异常的问题
20分
感觉这里的例子写不写throws确实没啥区别

更复杂一些的例子,比如:
写了throws IOException的方法
有其他类调用它的时候,有可能需要catch IOException这个异常并处理之
也就是一种“声明”,让调用方了解,自己不会处理IOException,而是交给调用方处理

JAVA抛出异常的问题
这个方法不用声明抛出OException,代码段没有能抛出这个异常的地方!
JAVA抛出异常的问题
引用 1 楼 Android_iPhone 的回复:

感觉这里的例子写不写throws确实没啥区别

更复杂一些的例子,比如:
写了throws IOException的方法
有其他类调用它的时候,有可能需要catch IOException这个异常并处理之
也就是一种“声明”,让调用方了解,自己不会处理IOException,而是交给调用方处理

就是说其实只要method不会被调用,那写不写就一样了?

JAVA抛出异常的问题
20分
引用 3 楼 qq_15891801 的回复:
Quote: 引用 1 楼 Android_iPhone 的回复:

感觉这里的例子写不写throws确实没啥区别

更复杂一些的例子,比如:
写了throws IOException的方法
有其他类调用它的时候,有可能需要catch IOException这个异常并处理之
也就是一种“声明”,让调用方了解,自己不会处理IOException,而是交给调用方处理

就是说其实只要method不会被调用,那写不写就一样了?

方法是否被调用当然算其中的一部分
这里想说的是:
方法内部中是否会抛出这个异常,如果会,最好就写throws语句,这样外边如果没有处理,可以给出一些警告;
如果不会抛出这个异常,就不用throws语句


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明JAVA抛出异常的问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!