InetAddress类
常用方法
getLocalHost()获取本机InetAddress对象getByName("www.hsp.com")根据指定主机名/域名获取InetAddress对象getHostName()获取InetAddress对象的主机名getHostAddress()获取InetAddress对象的地址(ip)
import java.net.InetAddress;
import java.net.UnknownHostException;
public class ComHspeduApi {
public static void main(String[] args) throws UnknownHostException{
InetAddress localHost = InetAddress.getLocalHost();
System.out.println(localHost);
InetAddress host01 = InetAddress.getByName("www.baidu.com");
System.out.println(host01);
String name = host01.getHostName();
System.out.println(name);
String address = host01.getHostAddress();
System.out.println(address);
}
}
控制台输出:
- dcs-61549bf4-0/172.16.41.36
- www.baidu.com/112.80.248.…
- www.baidu.com
- 112.80.248.75
Socket
-
socket是数据通道的两端,通信的两台机器都要有socket,网络通信其实就是socket间的通信。
-
当需要通信时,socket允许程序把网络连接当作一个流,数据在两个socket之间通过IO传输;通过
socket.getInputStream()和socket.getOutputStream()进行数据读写 -
一般主动发起连接的应用程序为客户端,接收连接请求、监听的为服务端
客户端和服务器端一般是不同电脑上。
两种编程方式
- TCP编程:可靠
- UDP编程:不可靠