黑马程序员技术交流社区

标题: 关于异常处理中try catch的问题 [打印本页]

作者: tiancheng13145    时间: 2015-11-17 17:00
标题: 关于异常处理中try catch的问题
求解 try{}catch{}finally{}都有什么用,他们捕捉到异常,之后感觉好像也没什么用,它是把异常给处理了吗?然后那个throws抛出异常不还是有异常,看过好像也很难理解,求大神指教。
作者: feng0606    时间: 2015-11-17 17:15
这个就像你走路的时候的告示路标一样,告诉你前面有危险之类的一样,可以让别人知道. 有try说明这个代码可能会出问题,其实初级阶段没必要太纠结,记住就好了.以后就理解了.
作者: 苹果核的梦想    时间: 2015-11-17 18:13
throws抛出异常是为了告诉调用者我这里可能会出错,如果有错了调用可以处理,也可以继续往外抛出,自己捕获异常则是为了提高程序的健壮性一旦有了错误,可以有个解决方法,比如记录日志    切忌在程序中写个空的catch什么都不做,哪怕是输出一句话也别写空catch,这样出了错你都不知道哪里出的错
作者: 小笨笨天    时间: 2015-11-17 20:02
多敲吧  有时候敲着敲着就体会到了  
作者: Rocky_zhang    时间: 2015-11-17 22:06
这个是Jvm给你的优惠,就比如说你走在一条路上,前边警告你有一个下水道的井盖没有,让你小心绕过,你绕过的这个过程就是抛出的过程,至于这个下水道的井盖什么时候能有,不需要你去关注,jvm底层的一些东西会帮你来完成,是你的程序跑起来就OK了,感觉不到有什么用,但没有他,你会过不去的
作者: sufutian    时间: 2015-11-18 18:45
抛出去之后自己给解决方法 呀
作者: tiancheng13145    时间: 2015-11-18 21:02
feng0606 发表于 2015-11-17 17:15
这个就像你走路的时候的告示路标一样,告诉你前面有危险之类的一样,可以让别人知道. 有try说明这个代码可能 ...

好吧,我多敲几遍吧
作者: tiancheng13145    时间: 2015-11-18 21:03
小笨笨天 发表于 2015-11-17 20:02
多敲吧  有时候敲着敲着就体会到了

只能这样了,确实不好理解。
作者: tiancheng13145    时间: 2015-11-18 21:04
Rocky_zhang 发表于 2015-11-17 22:06
这个是Jvm给你的优惠,就比如说你走在一条路上,前边警告你有一个下水道的井盖没有,让你小心绕过,你绕过 ...

就是说抛出之后程序就可以运行下去了?你这个解释挺好的,那个try catch要怎么理解呢

作者: tiancheng13145    时间: 2015-11-18 21:06
sufutian 发表于 2015-11-18 18:45
抛出去之后自己给解决方法 呀

不太懂,自己给什么方法

作者: 雨来    时间: 2015-11-18 21:37
你写一个方法的时候,你可能会认为你的程序你的方法会运行在一个完美的环境中,但是使用都是面向所人群的,如写文件  会不会出现硬盘空间不足的情况,除数会不会出现除以0的情况,传输东西的时候,会不会网络中断,当然你会认为 程序是运行在一种完美的情况下的,如果出现上述这样的情况,你会怎么办呢,如果没有异常处理  真的出现这种情况,你的程序就挂掉了,用了异常我们可以提示用户,也可以让程序员看到程序哪里有Bug
作者: hbcoding    时间: 2015-11-19 18:21
没必要太钻牛角尖,等你学到后面慢慢就可以理解了。
作者: tiancheng13145    时间: 2015-11-19 21:29
雨来 发表于 2015-11-18 21:37
你写一个方法的时候,你可能会认为你的程序你的方法会运行在一个完美的环境中,但是使用都是面向所人群的, ...

好像有点懂了,谢谢大神。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2