2014-11-04 33 views
1

我开始与尝试,渔获量的Java工作异常处理。我在我的catch中出现错误,提示“未处理的异常类型InvalidBalanceException”。理解的try-catch和Java中

这是我的Person对象:

public Person(String name, int age, double bankAccountBalance) { 
    boolean trueOrFalse = false; 
    setName(name); 
    setAge(age); 
    while(trueOrFalse == false) { 
     try { 
      setAccountBalance(bankAccountBalance); 
     } catch(InvalidBalanceException e) { 
      throw new InvalidBalanceException(e+": You did not enter a double"); 
      } 
    } 
} 

这是我InvalidBalanceException:

@SuppressWarnings("serial") 
public class InvalidBalanceException extends Exception{ 

    public InvalidBalanceException() {} 

    public InvalidBalanceException(String message) { 
     super(message); 
    } 
} 

有人可以给我一些见解,我需要这个做什么?

+3

如果你发现一个异常并重新抛出,什么是摆在首位捕捉它的意义呢? – 2014-11-04 02:55:28

+0

您需要添加你实例Person对象异常处理。如果你需要更多的说明,那么还要显示这个Person对象得到创建的代码 – 2014-11-04 02:59:00

回答

1

一个例外是什么意外发生,你必须处理,在要被抛出此异常这种情况下,当有人创造了个人的一个实例,并且不进入双,如果你真的想,如果用户测试输入的东西比一个数字或一个无效的号码(A版本大数目或类似的东西),还有那么你的构造函数应该接受一个数字来代替,或者一个字符串,你应该尝试分析或转换价值一倍,如果你不能,那么抛出异常。

但是,如果你实例的对象就好像你的类的需求,并把什么比双不同,编译器不会让你到这一点无论哪种方式。