1. 程式人生 > >浙大《面向物件程式設計--java語言》學習筆記(第八週:異常處理與輸入輸出)

浙大《面向物件程式設計--java語言》學習筆記(第八週:異常處理與輸入輸出)

8.1 異常

ArrayIndex.java

package exception;

import java.util.Scanner;

public class ArrayIndex {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[] a = new int[10];
		int idx;
		Scanner in = new Scanner(System.in);
		idx = in.nextInt();
		
		try {
			a[idx]=10;
			System.out.println("hello");
		} catch(ArrayIndexOutOfBoundsException e) {
			System.out.println("Caught");
		}
	}

}

執行結果

//輸入
10

//控制檯反饋
Caught

 

 另一個程式

package exception;

import java.util.Scanner;

public class ArrayIndex {
	
	public static void f() {
		int[] a = new int[10];
		a[10] = 10;
		//由於上一行有異常,所以接下來的列印hello並不會輸出
		System.out.println("hello");
	}
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		try {
			f();
		} catch(ArrayIndexOutOfBoundsException e) {
			System.out.println("Caught");
		}
		System.out.println("main ended");
	}

}

執行直接結果

Caught
main ended

8.2 異常機制

 

 

8.3 流