黑马程序员技术交流社区
标题:
异常问题
[打印本页]
作者:
刘晓康
时间:
2012-4-6 23:12
标题:
异常问题
在编写方法时我们可以throws该方法可能产生的异常,交由该方法的调用者去处理,但在main方法后throws的异常,由谁处理呢?不会是编译程序吧,那以后写程序偷懒,都在main方法后面声明异常而不处理,也没好处啊?
作者:
薛飞飞
时间:
2012-4-6 23:25
这个涉及到就业班里的客户端与服务器交互的内容,现阶段没必要了解,只要知道可以这么做就行了...
作者:
攻城狮
时间:
2012-4-6 23:32
由虚拟机处理,默认处理方式只会在控制台打印栈信息
如果我们的方法不再被其他的方法调用,我们最好自己处理异常,当发生错误时我们可以解决。
最简单的是我们可以再catch里写一句话,当发生错误时可以方便我们检查。
还有,当我们进行网络编程时,我们可以在finally里关闭我们的socket和io流连接,如果我们直接throws的话,那么当发生错误时,我们的socket和io流有可能没有close掉,那么就会造成内存的泄露。
作者:
曾晓文
时间:
2012-4-6 23:50
main方法后throws的异常由虚拟机来处理。对于 在main方法后面声明异常而不处理 ,在真实的应用中那可不行,因为在完成不同的业务功能是肯定会抛出各种异常,我们需要根据实际情况,将他catch住。如:IO操作发生异常,不能直接就完外抛,不然,IO资源没有关闭,造成内存泄露。
作者:
莫运飞
时间:
2012-4-7 00:13
在main方法后throws的异常由java虚拟机处理。在编程的时候有问题最好还是不要抛为好,最好try一下仔catch处理一下。
问题不处理的话,程序一有点小问题就停下来。这样的程序是不稳定,不完善的。程序有问题时try一下再处理,就算有问题,也可以进过catch处理程序照样进行运行。
作者:
刘_浩
时间:
2012-4-7 02:15
main是由于虚拟机调用的,当然是给虚拟机了呀,然后按照虚拟机默认处理机制进行处理的。
作者:
郑苑东
时间:
2012-4-7 16:25
你要想的是如果你每次都偷懒。。那么每次执行都异常的地方就不会往下执行。。。不去try。。catch。。那么每次执行到异常的地方就会放回到你调用的函数。。最后返回到主函数。。到main方法。。到虚拟机。。那样就会有很多本来必须要被执行的东西。。没有执行到。。。而且你第一次不try。。catch。。调用的方法的语句也要try。。catch。。一直不捕获,,就会错过很多东西。。就好比。。你遇到事情就后退。。你就会错过很多风景。。。
作者:
孙国军
时间:
2012-4-7 17:04
在主函数上抛异常,是java VM处理,
你若是放在main后面不出理的话,那么你抛得异常是没有太大意义的
作者:
pray
时间:
2014-4-26 03:34
真乃神人啊!楼主的帖子实在是光彩夺目。子曰:三人行而必有我师焉。斯言善哉。不知不觉上网这么多年,好的坏的PP都看过了,看多了。渐渐的也觉得没什么意思了。渐渐觉得自己已经达到奋斗的顶峰了。可是,第一眼看到楼主浅笑嫣然的时候,我的眼前竟然感觉一亮!仿佛看到了倾城倾国的美人,正轻摇柳步款款而行。正好似楼主的外表,相貌端正,天庭饱满。好片啊!只有那种真理在握,洞视这个世界真实本质的人,才能显示出这样惊人的魅力。在日益苍白肤浅的网络里,我从楼主的PP中不但看到了美丽,更加看到了网络的希望。为表达我对楼主的敬意,也是为了向楼主学习。我决心要把这个帖子顶上去!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2