gpt4 book ai didi

java - 当基类需要捕获异常时,在派生类构造函数中使用 Super

转载 作者:行者123 更新时间:2023-11-30 04:29:01 24 4
gpt4 key购买 nike

我正在尝试将类 B 派生为 Java 中的新类 C。基类构造函数要求必须抛出或捕获未报告的异常。但是,如果我尝试将 super(..) 放入 try/catch 中,则会被告知对 super 的调用必须是构造函数中的第一个语句。有谁知道解决这个问题的方法吗?

public class C extends B
{
//Following attempt at a constructor generates the error "Undeclared exception E; must be caught or declared
//to be thrown
public C(String s)
{
super(s);
}

//But the below also fails because "Call to super must be the first statement in constructor"
public C(String s)
{
try
{
super(s);
}
catch( Exception e)
{
}
}
}

非常感谢,克里斯

最佳答案

您始终可以使用 throws 子句在构造函数签名中声明异常

public C(String s) throws WhatEverException
{

关于java - 当基类需要捕获异常时,在派生类构造函数中使用 Super,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15095138/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com