问题描述
|
有人可以告诉我以下代码中的“ 0”部分吗?
public static void main(String args[]) throws Exception {
//do something exciting...
}
先感谢您。
解决方法
这意味着函数
main(String[])
可以抛出Exception
的任何子类型。在Java中,必须显式声明方法抛出的所有异常(“ 4”除外)。
这意味着每个使用ѭ2every的方法都必须小心(try
,catch
)Exception
,或者也将自己声明为throwing Exception
。
, 异常是Java在意外事件发生时采取行动的一种方式。例如,如果您想读取/写入文件,则必须处理文件有问题时将抛出的“ 10”字样。
一个小例子向您解释:
让我们采用一种称为method1()
的方法,该方法会引发异常:
public void method1() throws MyException {
if (/* whatever you want */)
throw new MyException();
}
它可以以两种方式使用。 with13ѭ的第一种方法将简单地进一步将热土豆扔掉:
public void method2() throws MyException {
method1();
}
method3()
的第二种方式将解决该异常。
public void method3() {
try {
method1();
}
catch (MyException exception) {
{
/* Whatever you want. */
}
}
有关异常的更多信息,http://download.oracle.com/javase/tutorial/essential/exceptions/应该有所帮助。
编辑
假设我们要在此数组中返回值的包含值(即输入数字的平方):int[] squares = {0,1,4,9,16,25};
或0
,如果数字(input
)太大。
行人程序设计:
if (input > squares.length)
return 0;
else
return squares[input];
异常大师编程:
try {
return squares[input];
}
catch (ArrayIndexOutOfBoundException e) {
return 0;
}
第二个示例是更清洁的示例,因为您还可以在此之后添加另一个块(并再次添加另一个),以便解决所有可能的问题。例如,您可以在末尾添加:
catch (Exception e) { // Any other exception.
System.err.println(\"Unknown error\");
}