異常な運動

用com.qf.test Package変更;
 / * 
 *使用したカスタム例外が解決
 * 
 *タイトル:教師はクラス内のコンピュータを使用
 するクラスは、コンピュータに異常---再起動したときに発生する可能性があります*コンピュータブルースクリーンを
 クラスで*クラッシュ異常異常---- ----教師を-コンピュータを修復するためにアップルストアに行く
 * 
 *注:適切な場合trycatch使用して?
 メソッド呼び出しの例外が発生する可能性がありますとき*適切な使用
 * 
 * / 
パブリック クラスDemo10 {
     公共の 静的な 無効メイン(文字列[] args)を{ 
        Teacher1 teacher1 = 新しい新しい Teacher1を(新しい新しいコンピュータ());
         試み{ 
            teacher1.work(); 
        } キャッチ(ClassingException E){ 
            e.printStackTrace();
            システム。アウト.println(" 去中关村修电脑" )。
        } 
    } 
} 

// 创建三个异常类
クラスClassingExceptionが延びる例外{
     パブリックClassingException(){} 

    公共ClassingException(文字メッセージ){ 
        スーパー(メッセージ)。
    } 
} 

クラスLanPingExceptionは延び例外{
     パブリックLanPingException(){ 
    } 

    公共LanPingException(文字メッセージ){ 
        スーパー(メッセージ)。
    } 
} 

クラスMaoYanExceptionは、例外{延び
     MaoYanExceptionを(){公共
    } 

    公共MaoYanException(文字メッセージ){ 
        スーパー(メッセージ)。
    } 
} 

クラスTeacher1 { 
    コンピュータのコンピュータ、

    公共Teacher1(コンピュータコンピュータ){ 
        スーパー(); 
        この .computer = コンピュータ; 
    } 
    // 老师上课
    公共 ボイドワーク()ClassingExceptionスロー
    { 
        試みる{ 
            (computer.computerWork)を、
        } キャッチ(LanPingException電子){ 
            e.printStackTrace(); 
            computer.reset(); 
        } キャッチ(MaoYanException E){ 
            e.printStackTrace(); 
            スロー 新しい新 ClassingException(" 教師のクラスが続行できません" ); 
        } キャッチ(例外E){ 
            e.printStackTrace(); 
        } 
        
    } 
} 

クラスのコンピュータ{
     // 現在の状態値を設定します2.発生する青い煙の1異常代表
    int型のステータス= 2 ;
     // 再開方法
    公共 ボイドRESET(){ 
        。システムOUT .println(コンピュータを再起動を); 
    } 
    
    // コンピュータワーク
    公共 無効computerWorkは()LanPingException、MaoYanExceptionスロー
    { 
        スイッチ(ステータス){
         ケース 1。 // 
            スロー 新しい新 LanPingException(" コンピュータのブルースクリーン" );
             // BREAK; 
        ケース 2// 喫煙
            スロー 新しい新しい MaoYanExceptionを(PCの喫煙を" );
             // BREAK; 
        デフォルトBREAK ; 
        } 
    } 
} 
// :注目点例外を書き換える処理で使用されます
/ *
* = <親クラスを宣言し、同じ名前のサブクラスによって異常のための方法
サブクラス2.同じ方法で異常が親クラスと一致しないことが宣言*は、異例の声明。サブクラスではないかもしれないが、今回メソッドが例外をスローすることはできません
サブクラスの例外ステートメントの同じメソッド場合* 3を、親は例外宣言する必要があります。
* / 
クラスコンピューター{拡張BadComputer 
    
    公共 ボイドcomputerWorkを()
    { 
        
    } 
}

 

おすすめ

転載: www.cnblogs.com/yumengfei/p/10960377.html