10

Java API 中的无效命令行参数是否有适当的异常类,还是我必须创建自己的?我试过搜索一个,但在 API 中找不到任何内容。

这是一个作业,所以我不能使用第三方库进行命令行解析。

4

3 回答 3

11

大多数情况下,当接收到的参数无效时,抛出一个IllegalArgumentException.

公共类IllegalArgumentException扩展 RuntimeException

抛出以指示方法已传递了非法或不适当的参数。

于 2012-08-31T02:59:58.157 回答
4

处理对程序没有意义的未知命令行参数或组合的最佳方法是显示错误消息并提供用法输出。

就个人而言,根据命令行的复杂程度,我将创建一个名为“usage”(通常是静态)的方法,该方法可以将可选的错误消息传递给它。

在解析传递给程序的命令行参数时,我将调用此方法并通过标志或直接退出,或者让usage我的方法调用退出。

但这只是我

于 2012-08-31T03:01:31.923 回答
0

命令行参数以String[]. 如果您希望输入采用某种形式或某种顺序,您可以抛出一个您自己创建的异常来处理它(尽管抛出异常会终止程序;如果出现以下情况,您需要优雅地处理它这是必需的)。

于 2012-08-31T02:58:43.603 回答