0

我正在尝试调用自定义捕获表达式

String value1 = side1_tb.getText();
String value2 = side2_tb.getText();
String value3 = side3_tb.getText();
try
{
    result_lbl.setText(
        actual_triangle.Triangle(
            Double.parseDouble(value1),
            Double.parseDouble(value2),
            Double.parseDouble(value3)));
}
catch (NumberFormatException exe)
{

}

所以从上面的代码你可以看到有三个文本框值被分配给一个字符串变量,然后我用'Numberformatexception'实现了一个try and catch方法,但是在'Numberformatexception'的地方我想实现一个自定义异常和这个异常将在另一个类中声明让我们调用这个类 EXCEPTIONclass.java 在这里我想创建一个异常,如果字符串值无法解析为双精度值,我试图在上面的代码中实现。

不太确定如何扩展异常类然后声明一个新异常。

4

2 回答 2

1

你可以这样做:

public class MyCustomException extends Exception
{
    // To keep compiler happy about Exception being serializable.
    // Note: This should carry meaningful value when these exceptions are going 
    // to be serialized
    public static final long serialVersionUID = 1L; 

    public MyCustomException(String message, Throwable t)
    {
        super(message, t);
    }

    // Other constructors of interest from the super classes.
}

在您的 catch 块中,您将按如下方式包装 NumberFormatException:

catch (NumberFormatException nfe)
{
    throw new MyCustomException("<Your message>", nfe);
}
于 2012-10-02T07:53:16.757 回答
0

只需创建从 Throwable (对于已检查的异常)或 RuntimeException (如果您希望它不被检查)派生的异常类,然后从您的 catch 子句中抛出它。

于 2012-10-02T07:51:02.880 回答