【发布时间】:2020-11-25 13:00:37
【问题描述】:
免责声明:我已经很久没有使用 Java 了。
我创建了这个单例类来创建一个 HttpURLConnection。
public class EstablishConnection {
HttpURLConnection conn = setupConn("some url");
private static final EstablishConnection instance = new EstablishConnection();
//private constructor to avoid client applications to use constructor
private EstablishConnection(){}
public static EstablishConnection getInstance(){
return instance;
}
private static HttpURLConnection setupConn(String addr) throws MalformedURLException, IOException, ProtocolException {
URL url = new URL(addr);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(10000);
conn.setConnectTimeout(15000);
conn.setRequestMethod("POST");
conn.setDoInput(true);
conn.setDoOutput(true);
return conn;
}
}
当我将它扔到 setupConn 时,为什么会收到未报告的 MalformedURLException 异常?
| HttpURLConnection conn = setupConn("some url");
unreported exception java.net.MalformedURLException; must be caught or declared to be thrown
【问题讨论】:
-
你在方法签名上抛出了它,但这也意味着调用可以抛出那个异常。错误在于调用,而不是方法本身
标签: java http malformedurlexception