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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 薛鹏鹏 高级黑马   /  2013-7-21 16:48  /  1533 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 薛鹏鹏 于 2013-7-22 14:32 编辑

在进行数据处理的时候,可以提前对输入数据进行控制,避免不合理的数据传入;异常处理也能对传入的不合理数据进行控制。       [br/] [br/]那么为了避免不合理的数据进行运算,什么时候用控制数据的方法?什么时候用异常处理?
  1. //什么时候用控制数据的方法,什么时候用异常处理?

  2. class Demo
  3. {
  4.         int div(int a,int b)
  5.         {
  6.                 return a/b;
  7.         }
  8. }

  9. class  ExceptionDemo
  10. {
  11.         public static void main(String[] args)
  12.         {
  13.                 Demo d = new Demo();
  14.                  try
  15.                  {
  16.                         int x= d.div(4,0);
  17.                         System.out.println("x="+x);
  18.                  }
  19.                  catch (Exception e)
  20.                  {
  21.                          System.out.println("不能除以零");
  22.                  }
  23.                
  24.            
  25.                 System.out.println("Hello World!");
  26.         }
  27. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

5 个回复

倒序浏览
我觉得应该是当你的程序没有问题而是 输入者输入非法的时候就不能用异常处理的方法了,因为处理了也没用,结果本来就是错的,就应该直接把程序停掉。用runtimeexception。
如果该问题对后续的运算没有影响的话,你就可以异常处理。

评分

参与人数 1技术分 +1 收起 理由
杨兴庭 + 1

查看全部评分

回复 使用道具 举报
liukunaitasa 发表于 2013-7-21 17:27
你要控制得好还行,一旦你控制不好,说不定程序直接就挂了,很不友好。
我觉得处理异常得站在用户的角度去 ...

控制数据的时候也可以输出提示信息,帮助用户输入合理的数据啊
回复 使用道具 举报
薛鹏鹏 发表于 2013-7-21 20:19
控制数据的时候也可以输出提示信息,帮助用户输入合理的数据啊

真正的异常处理不是只是输出提示信息的,,,要有解决机制,怎么说呢异常没有必要深究吧,,能处理就处理,处理不了就抛出吧
回复 使用道具 举报
今天看到毕老师说的关于使用if控制数据与异常处理的区别:
1.使用数据控制,数据依然会进行运算;而异常处理数据会停止运算,不进行无意义的运算。
2.数据控制,正常流程代码与问题处理代码太紧密,阅读性很差。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马