try-catch-finally 中哪个部分可以省略?

2019-09-15   阅读(391)  

catch 和 finally 语句块可以省略其中一个,否则编译会报错。

package constxiong.interview;
 
public class TestOmitTryCatchFinally {
 
	public static void main(String[] args) {
		omitFinally();
		omitCatch();
	}
	
	/**
	 * 省略finally 语句块
	 */
	public static void omitFinally() {
		try {
			int i = 0;
			i += 1;
			System.out.println(i);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 省略 catch 语句块
	 */
	public static void omitCatch() {
		int i = 0;
		try {
			i += 1;
		} finally {
			i = 10;
		}
		System.out.println(i);
	}
}

 

ConstXiong 备案号:苏ICP备16009629号-3