请给我一些实际场景,我们必须在Java中显式抛出异常

时间:2013-08-06 12:31:25

标签: java exception-handling

我知道Java中的异常处理。当我应该编写明确抛出异常的代码时,我没有得到。 任何带代码的实际场景都会有所帮助。

4 个答案:

答案 0 :(得分:3)

假设您有定价申请。在某些课程中,您有方法calculateCommision()

 public Double calculateCommision(Double price){

    if(price<0)
       throw new RuntimeException("Negative price ");
     -------
     // Some calculations
  }

其中表示价格不能为negative。这是有用的信息。

答案 1 :(得分:2)

JDK的例子

public File(String pathname) {
    if (pathname == null) {
        throw new NullPointerException();
    }
    ...

答案 2 :(得分:1)

class MyClass{

    void doSomething(MyObject o){
        if(o.myParameter == badValue){
            throw new myException();
        }
    }
}

有关何时抛出异常的详细说明,请参阅here

答案 3 :(得分:1)

异常不应该用作执行不同场景的测试用例。您可以在此处阅读更多信息http://www.onjava.com/pub/a/onjava/2003/11/19/exceptions.html

但是如果你有一个DB条目,你可以在其中有一个数字和一个字符串,你想要区分这两个,你可以将字符串作为一个数字(Integer.parseInt())处理,它将抛出一个NumberFormatException的()。然后你可以把它作为一个字符串来处理。但最佳做法是不要那样使用它。只是处理它并记录它,所以你可以修复源代码。