我想知道抛出 IOException 的第一种方法是否是更好的方法,
像这样,但我无法触发 IOException 来测试它。
public static String inputStr (String prompt) throws IOException
{
String inputStr = "";
System.out.print(prompt);
inputStr = stdin.readLine();
if (inputStr.length() == 0)
{
System.out.println("Error! Enter valid field!");
inputStr(prompt);
}
return inputStr;
}
或在方法内。
public static String inputStr (String prompt)
{
String inputStr = "";
System.out.print(prompt);
try
{
inputStr = stdin.readLine();
if (inputStr.length() == 0)
{
System.out.println("Error! Enter valid field!");
inputStr(prompt);
}
} catch (IOException e)
{
System.out.println("Error! Enter valid field!");
inputStr(prompt);
}
return inputStr;
}
是否有必要包含一条自定义消息以防被抛出?关于这个问题Java - What throws an IOException我无法测试会发生什么。
不确定这是否应该是代码审查,因为我不确定它是否真的有效。