【发布时间】:2014-05-02 01:07:45
【问题描述】:
我在 Java 中处理异常时遇到问题,这是我的代码。当我尝试运行此行时出现编译器错误:throw new MojException("Bledne dane");。错误是:
在相应的 try 语句体中永远不会抛出异常 MojException
代码如下:
public class Test {
public static void main(String[] args) throws MojException {
// TODO Auto-generated method stub
for(int i=1;i<args.length;i++){
try{
Integer.parseInt(args[i-1]);
}
catch(MojException e){
throw new MojException("Bledne dane");
}
try{
WierszTrojkataPascala a = new WierszTrojkataPascala(Integer.parseInt(args[0]));
System.out.println(args[i]+" : "+a.wspolczynnik(Integer.parseInt(args[i])));
}
catch(MojException e){
throw new MojException(args[i]+" "+e.getMessage());
}
}
}
}
这是MojException的代码:
public class MojException extends Exception{
MojException(String s){
super(s);
}
}
谁能帮我解决这个问题?
【问题讨论】:
-
什么是编译器错误?
-
嗯...
MojException不会被Integer.parseInt抛出... -
总是,总是总是告诉我们错误是什么,而不仅仅是你有一个错误。
-
异常 MojException 永远不会在相应的 try 语句的主体中抛出 - 这是错误消息。
-
迟到的答案... 扩展 RuntimeException ... 不是异常..