有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在Java中使用超类处理异常

对于家庭作业,我必须开发一个异常代码:

“使用继承来创建名为ExceptionA的异常超类,以及名为ExceptionBExceptionC的异常的两个子类,其中ExceptionB extends ExceptionAExceptionC extends ExceptionB。开发一个程序来证明类型ExceptionA的catch块捕获了ExceptionBExceptionC的异常。”

我不知道该怎么做


共 (3) 个答案

  1. # 1 楼答案

    假设这是一个无性繁殖的家族,叫做例外

    Family Tree

    异常C是异常B的儿子/女儿(我甚至叫他们什么),异常B是异常A的儿子/女儿,异常A是异常的儿子/女儿。异常C从异常B继承了基因,异常B从异常A继承了基因,等等

    你的老师想让你做的是展示你可以“捕获”异常C,使用与“捕获”异常A相同的方法。所以你可以使用try/catch语句和throw语句(生成异常)

  2. # 2 楼答案

    下面是一个非常简单的代码。你可以进一步提高你的学习能力

    创建异常ExceptionA并定义require构造函数和方法:

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

    创建异常ExceptionB并定义require构造函数和方法:

        public class ExceptionB extends ExceptionA {
    
            public ExceptionB(String message){
                super(message);
            }
        }
    

    创建异常ExceptionC并定义require构造函数和方法:

        public class ExceptionC extends ExceptionB {
    
            public ExceptionC(String message){
                super(message);
            }
        }
    

    创建TestException类,使用ExceptionA捕获ExceptionBExceptionC,如下所示:

        public class TestException {
    
            public static void main(String[] args){
    
                try{
                    getExceptionB();
                }catch(ExceptionA ea){
                    ea.printStackTrace();
                }
    
                try{
                    getExceptionC();
                }catch(ExceptionA ea){
                    ea.printStackTrace();
                }
    
            }
    
            public static void  getExceptionB() throws ExceptionB{
                throw new ExceptionB("Exception B");
            }
    
            public static void  getExceptionC() throws ExceptionC{
                throw new ExceptionC("Exception C");
            }
    
        }
    
  3. # 3 楼答案

    我想是这样的: 使用继承创建名为ExceptionA的Exception子类

    所以,为了帮助你

    例外情况->;例外a->;例外情况B->;例外

    所以,如果我想创建Object类型的子类,那么: 公共类ObjectA扩展对象{ //把新方法放在这里 }

    所以,试着创建你的子类,然后在遇到问题时展示一些代码

    这可能会对你有所帮助,但请不要将答案复制为你的作业:

    How to define custom exception class in Java, the easiest way?