1

宿題として、例外コードを作成する必要があります。

「継承を使用して、 という例外のスーパークラスと、 and 、 where 、およびExceptionAという例外の 2 つのサブクラスを作成します。型の catch ブロックがandの例外をキャッチすることを証明するプログラムを作成してください」.ExceptionBExceptionCExceptionB extends ExceptionAExceptionC extends ExceptionBExceptionAExceptionBExceptionC

これを行う方法がわかりません。

4

3 に答える 3

4

これが例外と呼ばれる無性生殖物の家族であると偽ってください。

家系図

例外Cは、例外Bの息子/娘(私はそれらを何と呼んでいますか)であり、例外Aの息子/娘であり、例外の息子/娘です。例外Cは例外Bから遺伝子を継承し、例外Bは例外Aから遺伝子を継承しました。

先生があなたに望んでいることは、例外Aを「キャッチ」するために使用しているのと同じ方法を使用して、例外Cを「キャッチ」できることを示すことです。したがって、try / catchステートメントとthrowステートメントを使用することになります(例外を生成するため)。

于 2012-10-09T01:27:04.200 に答える
3

これは非常に単純なコードです。学習をさらに充実させることができます。

例外ExceptionAを作成し、必要なコンストラクターとメソッドを定義します。

    public class ExceptionA extends Exception {

        public ExceptionA(String message){
            super(message);
        }
    }

例外 ExceptionB を作成し、必要なコンストラクターとメソッドを定義します。

    public class ExceptionB extends ExceptionA {

        public ExceptionB(String message){
            super(message);
        }
    }

例外 ExceptionC を作成し、必要なコンストラクターとメソッドを定義します。

    public class ExceptionC extends ExceptionB {

        public ExceptionC(String message){
            super(message);
        }
    }

以下のようTestExceptionにキャッチExceptionBExceptionCて使用するクラスを作成します。ExceptionA

    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");
        }

    }
于 2012-10-09T01:18:08.637 に答える
0

私はそれを期待しています:継承を使用して、ExceptionAと呼ばれるExceptionのサブクラスを作成します。

だから、あなたを助けるために。

例外->例外A->例外B->例外C

したがって、Object型のサブクラスを作成する場合は、次のようにします。public class ObjectA extendsObject{//ここに新しいメソッドを配置します}

したがって、サブクラスを作成してみて、行き詰まった場合はコードを表示してください。

これはあなたを助けるかもしれませんが、あなたの割り当てとして答えをコピーしないでください:

Javaでカスタム例外クラスを定義する方法、最も簡単な方法は?

于 2012-10-09T01:10:58.643 に答える