6.异常解密

异常谜题

1.返回值是什么

    public static boolean f() {
        try{
            return false;
        }finally {
            return true;
        }
    }

 答案:true

 

2.是否能编译通过

try{
     System.out.println("Hello World");
}catch(IOException e){
     //code
}

答案:不能编译通过,IOException是checkedException,而try块中不能抛出相应的异常,Exception或者Throwable确是可以编译通过的

 

3.能否编译通过

public class TaskTimeoutDemo implements type3{
    @Override
    public void f(){
        
    }
}

interface type1{
    public void f() throws IOException;
}

interface type2{
    public void f() throws ClassCastException;
}

interface type3 extends type1,type2{
    public void f();
}

 

答案:可以编译通过,type3中的f()函数只能抛出父类接口对应方法抛出的异常的交集,这里就是空集

 

posted @ 2016-11-13 16:29  疯狂的肉包  阅读(117)  评论(0编辑  收藏  举报