小编cod*_*dy1的帖子

使用超级构造函数创建异常

我有一个自定义异常类,如下所示:

public abstract class AccountException extends BankServiceException {

private int accountNo;

public AccountException(String message, int accountNo) {
    super(message);
    this.accountNo = accountNo;

}

public int getAccountNo() {
    return accountNo;
}
Run Code Online (Sandbox Code Playgroud)

现在我需要将这个抽象类扩展到一个更具体的异常:

public class  OverdraftLimitReachedException extends AccountException {

private double amount;
private double overdraft;

public OverdraftLimitReachedException(int accountNo,double amount,double overdraft) {
 super("The overdraft limit has been exceded",accountNo,amount,overdraft);
    this.overdraft = overdraft;
    this.amount = amount;
}

public double getAmount() {
    return amount;
}

public double getOverdraft() {
    return overdraft;
}
Run Code Online (Sandbox Code Playgroud)

现在这里的问题是超级构造函数,我知道我需要给它参数数量和透支,但是当我尝试编译它时,它说参数的长度不同。我如何正确调用超级构造函数,所以我可以给出错误信息。谢谢!

编辑:我添加了构造函数的实际外观(对不起,我有点笨拙)。稍后在代码中,当我实际抛出异常时,我需要提供构造函数的参数。

java exception super

1
推荐指数
1
解决办法
106
查看次数

标签 统计

exception ×1

java ×1

super ×1