class Annoyance extends Exception_多态

class Annoyance extends Exception {}
class Sneeze extends Annoyance {}
 
class Human {
 
	public static void main(String[] args) 
		throws Exception {
		try {
			try {
				throw new Sneeze();
			} 
			catch ( Annoyance a ) {
				System.out.println("Caught Annoyance");
				throw a;//抛出一个Annoyance引用
			}
		} 
		catch ( Sneeze s ) {
            //被抓取到Annoyance引用  相当于 a = new  Sneeze();多态(子类对象指向父类引用)
            //父类抛出的异常 子类异常是无法处理的  
			System.out.println("Caught Sneeze");
			return ;
		}
		finally {
			System.out.println("Hello World!");
		}
	}
}
输出:
Caught Annoyance 
Caught Sneeze 
Hello World!







原文地址:https://www.cnblogs.com/mljqqh/p/9694420.html