gpt4 book ai didi

java - 扩展另一个类的类,如何将其作为异常类?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:30:15 24 4
gpt4 key购买 nike

如果我的类已经扩展了一些其他类,如果我想将我的类的一个实例作为异常对象抛出,我应该怎么做?

我发现的唯一方法是某些父类(super class)必须扩展 Exception 类。还有别的办法吗?编辑:这是否也表明设计缺陷,如果是,请解释如何在您的类中使用自定义异常的正确方法是什么,是通过在您的类中添加自定义异常的引用还是在需要时调用“new”,您能给出代码大纲吗?

最佳答案

您必须将其包装在另一个类中。在java中你只能抛出Throwable的子类型,Throwable是一个类。

例子:

public class Wrapper extends Exception {
public final MyClass wrapped;
public Wrapper(MyClass toWrap) { wrapped = toWrap; }
}

如果这是 trampoline 的应用程序技术或类似的控制流技术,则有一些方法可以获取堆栈跟踪(减少创建对象所需的时间)。如果需要我可以查一下。

关于java - 扩展另一个类的类,如何将其作为异常类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12696294/

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