//文件1中,类中函数定义,还函数后要添加抛出错误的类型
public Node getNode(int ID) throws NoSuchNodeException{
for(Node oneNode:nodes)
if(oneNode.getId()==ID)
return oneNode;
throw new NoSuchNodeException("no Node with ID "+ID+"in this Graphs");
//抛出错误实际上是新建一个对象,参数为要显示的错误信息
}
//文件2中,通过try catch来捕获错误信息,否则错误可能会让整个程序停止
//有catch时只显示自己设定的错误信息,还可以添加相应的处理
try {
graph.getNode(42);
} catch (NoSuchNodeException e1) {
System.out.println("No such node: " + e1.getMessage());
}
//文件3中,定义自己的错误,格式基本和下面相同,getMessage是用来显示信息的
class NoSuchNodeException extends Exception {
private static final long serialVersionUID = 1L;
String message;
public NoSuchNodeException(String ErrorMessagr) {
message = ErrorMessagr;
}
public String getMessage() {
return message;
}
}
转载于:https://my.oschina.net/xcxt/blog/352332