2012-03-11 93 views
1

我一直在做一个基于控制台的库存程序作为我的课程的一部分,现在我需要存储和解析文件中的数据。因此,我已将所有数据存储在csv文件中,并有一个专用的'文件',其中包含一个通用的loadFile()方法。在哪里处理文件异常?

如果无法找到库存或配置文件,程序继续执行并不合乎情理,因为所有其他操作都依赖于它们。

因此,我只是在loadFile()方法中捕获文件并向用户打印语句,然后使用System.exit()关闭。

这是一个很好的做法吗?在打印了正确的错误信息之后,有没有更好的终止程序的方法?

回答

3

编号

例外的目的是为了表明例外条件。由于您的程序在没有其输入文件的情况下无法正常工作,因此System.exit()是正确的选择。

+1

这取决于程序当然,但对于命令行程序来说,这绝对是正确的做法。 – biziclop 2012-03-11 10:47:22

1

只有当你可以做一些有用的事情时,我才会处理它。如果你想停止程序,最简单的做法是抛出主抛出IOException异常。

public static void main(String... args) throws IOException { 
0

在这种情况我通常喜欢从loadFile()方法抛出一个未经检查的异常的程序不能从这种情况中恢复,例如RuntimeExceptionIllegalStateException。这个异常会导致应用程序退出,除非你决定去捕捉并处理它。