2016-03-01 33 views
1

在这个例子中,为什么使用空的“返回”(在catch块中)? (对不起,我的英语) 提前谢谢!在这个例子中,为什么使用空回归?

public class DeserializeDemo 
{ 
    public static void main(String [] args) 
    { 
     Employee employee; 
     try 
     { 
      ObjectInputStream in = new ObjectInputStream(new FileInputStream("E:\\serialization\\employee.ser")); 
      employee = (Employee) in.readObject(); 
      in.close(); 
     }catch(IOException i) 
     { 
      i.printStackTrace(); 
      return; //this one 
     }catch(ClassNotFoundException c) 
     { 
      System.out.println("Employee class not found"); 
      c.printStackTrace(); 
      return; //...and this one! 
     } 
     System.out.println("Deserialized Employee..."); 
     System.out.println("Name: " + employee.name); 
    } 
} 
+1

可能重复[在Java中的void方法中返回关键字做什么?](http://stackoverflow.com/questions/744676/what-does-the-return-keyword-do-in-a- void-method-in-java) –

回答

3

return,如名称所示,退出当前方法并返回给调用者。在你的例子中,如果发生错误,它会返回而不写最后的消息,因为它不能反序列化员工。

+0

非常感谢! –

-1

我从另一个线程

复制此Java语言规范说,你可以有一个不带表情的回报,如果你的方法返回void。它的作用与具有指定参数的函数的返回值相同,除非它不返回任何内容,因为没有任何内容可以返回,控制权将传回给调用方法。

相关问题