我正在通过使用一本教科书来学习 Java,其中包含以下代码,描述了如何使用HttpURLConnection
...
class HttpURLDemo {
public static void main(String args[]) throws Exception {
URL hp = new URL("http://www.google.com");
HttpURLConnection hpCon = (HttpURLConnection) hp.openConnection();
// Display request method.
System.out.println("Request method is " + hpCon.getRequestMethod());
}
}
有人可以解释为什么该hpCon
对象以下列方式声明...
HttpURLConnection hpCon = (HttpURLConnection) hp.openConnection();
而不是像这样声明它......
HttpURLConnection hpCon = new HttpURLConnection();
教科书作者提供了以下解释,我不是很明白...
Java 提供了一个 URLConnection 的子类,它提供对 HTTP 连接的支持。此类称为 HttpURLConnection。您可以通过在 URL 对象上调用 openConnection( ) 以刚才显示的相同方式获得 HttpURLConnection,但您必须将结果转换为 HttpURLConnection。(当然,您必须确保您实际打开的是 HTTP 连接。)一旦您获得了对 HttpURLConnection 对象的引用,您就可以使用从 URLConnection 继承的任何方法