InetAddress為什麽不能new而可以直接拿來用,但是如果直接把這個類拿來調用其方法,卻可以。查看該類源碼,該類不是靜態類,但是其有靜態方法,因為靜態方法可以直接通過命名空間調用,如:
InetAddress s = InetAddress.getByName("www.baidu.com");
如果要調用該類的非靜態方法,須先生成壹個類(即調用其中的靜態方法,返回壹個InetAddress類),如:
package?javaday.socket;import?java.io.IOException;
import?java.net.InetAddress;
public?class?EchoSocket?{
public?static?void?main(String[]?args)?throws?IOException?{
InetAddress?ia?=?InetAddress.getByName("www.baidu.com");
System.out.println(ia.getHostAddress());
}
}
運行結果如下: