黑马程序员技术交流社区
标题:
异常处理
[打印本页]
作者:
吴新钱
时间:
2011-8-6 16:40
标题:
异常处理
在编写方法时我们可以throws该方法可能产生的异常,交由该方法的调用者去处理,但在main方法后throws的异常,由谁处理呢?不会是编译程序吧,那以后写程序偷懒,都在main方法后面声明异常而不处理,也没好处啊?
作者:
匿名
时间:
2011-8-6 17:14
那当然由虚拟机处理啊,默认处理方式只会在控制台打印栈信息
作者:
匿名
时间:
2011-8-6 17:15
哥们,我看你好像面试通过了,是不是参加第四届的?
作者:
匿名
时间:
2011-8-7 10:01
回楼上,我的目标当然是第三期,只不过感觉在有些知识点的理解上不是很有把握,拿来交流,查漏补缺。
作者:
匿名
时间:
2011-8-7 11:03
我建议你看看Java编程思想(thinking in java),我现在正在看。
如果我们的方法不再被其他的方法调用,我们最好自己处理异常,当发生错误时我们可以解决。
最简单的是我们可以再catch里写一句话,当发生错误时可以方便我们检查。
还有,当我们进行网络编程时,我们可以在finally里关闭我们的socket和io流连接,如果我们直接throws的话,那么当发生错误时,我们的socket和io流有可能没有close掉,那么就会造成内存的泄露。
作者:
匿名
时间:
2011-8-9 02:27
楼上说的不太对,记得有一个老师跟我说过,如果你写的方法不再被其他的方法调用,或者调用次数很少,可以选择try{}catch{}。但是如果调用次数很多,比如你在做项目的系统架构,你在底层定义的一个方法会产生异常,一定要throws出去,不能自己try{}catch{}掉,尤其是层层调用的时候,每一层都要向上throws,如此一旦出错,最上层的程序员会知道哪错了,如果某一层try{}catch{}掉了,那系统出问题了程序员可能根本不知道,发现有错了,找到错误来源也很麻烦
作者:
匿名
时间:
2011-8-10 05:02
catch之后写上一些信息再再往上抛,这个叫异常链。有时因为不能比重写的方法泡出更多异常,先捉住,再包装成RuntimeExceptiom抛出去
作者:
水中n枝花
时间:
2011-10-10 09:56
看看.............
www.51koo.net黑客论坛 www.soyangsyl.com搜羊娱乐新闻网
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2