A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马--马超 初级黑马   /  2012-8-2 21:58  /  1342 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑马--马超 于 2012-8-10 20:20 编辑

1.异常在什么时候使用?
2.处理异常最好途径的操作步骤是怎么样?
3.从检查异常到处理异常个阶段的内存变化是怎样的?
已解决


1 个回复

倒序浏览
首先,调用的方法有可能出现异常而且已经在类中抛出该异常,此时需要调用者处理或者抛出。
其次,当设计需求里有相对于该需求特殊的异常,比如:除以负数。
本来它并不是异常。由于某些需求会不允许除以负数。
此时就需要自定义异常类,然后在有可能发生异常的地方进行判断并抛出异常对象。
此异常如需调用者处理可以在类上抛出,如想使程序就此停止运行,可以不在类上抛出。


另外,处理异常的没有最好的途径。只有最合适的。
因为相对不同的情况会有不同的处理方式。
比较常规的处理方式:
抓取异常
对异常进行处理
关闭资源。
但是,某些情况下需求是不一样的。
例如:毕老师讲io的时候处理的异常。
需求就是为了演示io。
所以异常经常全部抛出。
这就是相对这种情况下比较合适的处理方式。
如果你去做项目的话,io中的异常当然不能直接抛出。
因为现在你的需求是需要项目的安全和稳定性。
所以异常的处理需要视情况而定,最合适的才是最好的。

关于内存变化,也是视情况而定。
比较常规的变化是:
抓取到异常
立刻跳转到相应的异常处理
处理完以后执行必须执行的代码。
不是所有的异常都需要在内部处理。
要有一种面向对象的思想。
要先明确此异常是否是在内部能狗处理的了的。
不该你处理的异常你处理了,就会使问题隐藏而造成更大的隐患。
希望对你有所帮助。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马