gpt4 book ai didi

java - 将异常消息传递给父类,而不使用 throw new exception(); 构造​​ , 消息;

转载 作者:行者123 更新时间:2023-11-30 02:53:49 25 4
gpt4 key购买 nike

我有这个代码:

public class ExceptionFather extends Exception {}

public class ExceptionSon extends ExceptionFather {
String someMessage;
public ExceptionSon () {
super(someMessage);
}
}

我的目标是子异常将有自己的固定消息,该消息将自动传递,并且我不必每次抛出它时都在构造函数中写入消息。

问题是,这给了我一个语法错误,指出我必须有一个将消息作为其参数的构造函数。

最佳答案

您必须在 ExceptionFather 类中定义采用 String 参数的构造函数:

class ExceptionFather extends Exception {
public ExceptionFather(String message) {
super(message);
}
}

之后,您将能够在子类ExceptionSon中编写super(yourString)yourString 不能是子实例变量,因为在调用父类(super class)型构造函数之前无法访问它。但在这种情况下,您可以使用静态(类)变量或 String 文字:

class ExceptionSon extends ExceptionFather {
private static String message = "message";
public ExceptionSon() {
super(message); // or just "message"
}
}

关于java - 将异常消息传递给父类,而不使用 throw new exception(); 构造​​ , 消息;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37839955/

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