关于异常的处理以及相关设计
2007-02-06 12:02
316 查看
最近设计程序的时候,老抛出NullPointerException,ArrayOutOfIndexException异常,发现这些异常的抛出对程序的稳定性是有好处的。它可以防止程序崩溃。
不过相信开发过程序的人应该对这些异常操作是很厌烦,有什么办法可以避免这些操作呢?
什么时候抛出异常,什么应该在程序里抓住异常?
比如你对一个对象的操作
java 代码
if(object == null)
threws new NullPointerExcction("对象不应该为空");
if(object == null)
return;
这两种方式在设计的时候经常使用,有些程序容许你对象为空的时候可以进行下一步操作,有些程序则强制要求上一步的环境一定要建立,比如对象步能为空,资源一定要存在等。
欢迎各位高手谈谈异常体系上设计的心得,
异常设计的好可以减少很多if,witch等语句。
那个用户登陆的例子来说吧。
记得以前写过程式编程的时的代码如下:
java 代码
int isNotExist = 1;
int succes = 0;
int passwordError= 2;
int ,......
int login(){
...................
................
return i;
}
采用异常处理时候
java 代码
class UserNotFindExecption{
.........
}
void login() throw Exception{
.........
throws new UserNotFindExecption()
}
这两种设计方式就很考究你对异常的理解。
不过相信开发过程序的人应该对这些异常操作是很厌烦,有什么办法可以避免这些操作呢?
什么时候抛出异常,什么应该在程序里抓住异常?
比如你对一个对象的操作
java 代码
if(object == null)
threws new NullPointerExcction("对象不应该为空");
if(object == null)
return;
这两种方式在设计的时候经常使用,有些程序容许你对象为空的时候可以进行下一步操作,有些程序则强制要求上一步的环境一定要建立,比如对象步能为空,资源一定要存在等。
欢迎各位高手谈谈异常体系上设计的心得,
异常设计的好可以减少很多if,witch等语句。
那个用户登陆的例子来说吧。
记得以前写过程式编程的时的代码如下:
java 代码
int isNotExist = 1;
int succes = 0;
int passwordError= 2;
int ,......
int login(){
...................
................
return i;
}
采用异常处理时候
java 代码
class UserNotFindExecption{
.........
}
void login() throw Exception{
.........
throws new UserNotFindExecption()
}
这两种设计方式就很考究你对异常的理解。
相关文章推荐
- 有关throw、try catch、finalliy对异常的处理,以及关于接受命令行参数
- new、delete以及异常处理的相关举例
- Struts中文件上传时的空指针异常处理以及获取不到上传文件相关属性
- 关于断言与错误处理,以及测试用例的设计
- springmvc 异常处理、文件上传以及拦截器相关知识
- Ios中关于IB简介、视图、以及设计模式相关知识
- 20130910 一些想法,关于项目中异常处理的解决方案,以及Elmah
- 关于智能家居主界面,通话记录界面设计的相关问题(ViewPager以及自定view)
- 尽管关于Java中文问题的讨论已经相当多了,但由于Java的相关技术标准繁多,面向Java的Web服务器、应用服务器以及JDBC数据库驱动等都没有官方的标准,所以Java应用在处理中文时所存在的问
- 关于SQLSERVER 事物的运用(3)嵌套事物以及嵌套存储过程的异常的处理
- 关于SQLserver2005事务和异常处理的联合处理以及在c#中的异常捕获
- 关于myhabits一些异常以及处理问题
- NSDate的处理:前一天、后一天等关于时区偏移的处理以及在数据库中的使用
- sguap 遇到的异常以及处理方法
- PHP异常处理以及命名空间
- 系统异常捕捉处理设计文档
- 黑马程序员-----关于java的异常处理
- COM组件设计与应用(十二) 错误与异常处理
- 关于2009年5月19日开始的网络访问异常相关消息
- 关于FAT32和NTFS文件系统的介绍以及相关问题的解答(转自“第二战区”)