-1

我对 Java 中的异常处理有所了解。我不知道什么时候应该编写会显式抛出异常的代码。任何带有代码的实际场景都会有所帮助。

4

4 回答 4

3

假设您有一个定价应用程序。在某些课程中,您有方法calculateCommision()

 public Double calculateCommision(Double price){

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

这表明价格不可能negative。这是有用的信息。

于 2013-08-06T12:36:11.677 回答
2

来自 JDK 的示例

public File(String pathname) {
    if (pathname == null) {
        throw new NullPointerException();
    }
    ...
于 2013-08-06T12:46:04.150 回答
1

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

但是如果你有一个数据库条目,你可以在其中有一个数字和一个字符串,你想区分这两者,你可以将字符串作为数字处理(Integer.parseInt()),它会抛出一个 NumberFormatException() . 然后你可以把它当作一个字符串来处理。但最佳实践不是那样使用它。只是为了处理它并记录它,以便您可以修复源代码。

于 2013-08-06T12:45:08.603 回答
1
class MyClass{

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

有关何时引发异常的详细说明,请参见此处。

于 2013-08-06T12:35:08.087 回答