下面是我正在处理的一个FTP应用程序的一些代码。第一种方法来自正在监视服务器输出的类所触发的接口。抛出声明和接口方法
@Override
public void responseReceived(FTPServerResponse event) {
if (event.getFtpResponseCode() == 227) {
try {
setupPassiveConnection(event.getFullResponseString());
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
它调用第二个setupPassiveConnection()
引发一些异常。
public void setupPassiveConnection(String serverReplyString) throws UnknownHostException, IOException {
String passiveInfo[] = serverReplyString.substring(
serverReplyString.indexOf("(") + 1,
serverReplyString.indexOf(")")).split(",");
int port = (Integer.parseInt(passiveInfo[4]) * 256)
+ (Integer.parseInt(passiveInfo[5]));
String ip = passiveInfo[0] + "." + passiveInfo[1] + "."
+ passiveInfo[2] + "." + passiveInfo[3];
passiveModeSocket = new Socket(ip, port);
if(passiveModeSocket != null)
isPassiveMode();
}
由于无法通过第一种方法重新抛出异常,那么将重写这种方法的正确方法是什么?
收到的回复将被另一个类使用吗?如果是的话,吉姆加里森的答案是正确的。 – 2010-05-28 18:50:23