例外処理
異常分割ERROR(例外を処理することはできません)と例外(例外処理をすることができる):Throwable-> ERROR、例外
と例外分割コンパイルと異常異常を実行します。
異常1.ラン
1).NullPointerExceptionヌル例外
異常0で割っ2).ArithmeticException
3).InputMismatchException入力異常
4).ArrayIndexOutOfBoundsException配列添字境界例外
5)InterruptedExceptionある割り込み例外
2.の例外コンパイル
1)。 FileNotFoundExceptionファイルが見つからない異常
II。
try{
//一条或多条可能会发生异常的代码块
}catch( ArrayIndexOutOfBoundException e)
{
// e.printStackTrace();
System.out.println("下标越界");
}catch(ArithmeticException e)
{
System.out.println("除零错误");
}
1.試みは、ケアに関する具体的でなければならない、異常な改良点を気、または面倒見ていないキャッチの一つ以上に対応する、例外をキャッチし
、共通の異常への書き込みを気にしない、一般的に:キャッチ(例外e){}すなわち親クラスによって受け入れられ、上方モデリングを反映する(アップモデリング:基底クラスの派生クラスの参照オブジェクト)
2キャッチのキャッチの背後にキャッチには継続しない、すなわち、コードがキャッチされた以前試します例外ではなく、文の継続的な実施の背面。
3。最後{}:キャッチまたはステートメントの後にキャッチ(例外文が発生したかどうか、実行されます)を行ってはいけない、トライは最終的に対応しています。
ミッションが失敗したかどうかであるファイルは、すべてのファイルを閉じることができる場合は、ファイルに適用することができます。
finallyブロックの前に4.tryブロックリターンは最終的に戻ってから、呼び出します。つまり、何が起こっても、最終的にはそれが確かに実行されません。
三つは、スロー:投げる例外クラス
public void fun() throws Exception{
int a=10/0;}
public static void main(Stirng[]args){
try{
fun();
}catch(Exception e){
e.printStackTrace();
}
}
四、投げる:投げる例外オブジェクト
public static void fun(int[] arr){
if(arr == null)
throw new NullPointerException();
}
第五に、カスタム例外
クラスMyExceptionは(例外を拡張)
第六に、終了
1.return
2.System.exit():メインプログラムは、メイン関数、(で表示)から出ます。//通常の終了、負の異常リターンのデフォルトは0。
インターフェース
- インタフェース:定数のpublic static final
- コンストラクタをインターフェイスしない、インスタンス化しません
- この方法は、抽象インタフェース、すなわち、それらの機能を持つことができないことができます。
- クラスとクラスの継承では、関係を拡張します。
- 抽象クラスとインタフェースは、すべての実装方法は、インタフェースを実装しています。
- クラスがインタフェースを実装し、抽象インタフェースのメソッドは完全に実現されなければなりません。
- インタフェースおよびインタフェース:継承。インターフェースは、複数のクラスCは、すべての抽象メソッドは、インターフェイスを実装する必要があり、B、D、Cベースのケースを実装する実装することができます。
- Thread.sleep(10000):10秒をスリープ状態にプロセス