InetAddress 类_InetSocketAddress 类_URL 类
- 1.InetAddress 类
- 2.InetAddress 类常用的方法
- 3.InetSocketAddress 类
- 4.InetSocketAddress 类常用的方法
- 5.URL 类
- 6.URL 类常用方法
1.InetAddress 类
封装计算机的 IP 地址,不包含端口号
2.InetAddress 类常用的方法
序号 | 方法 | 描述 |
---|---|---|
1 | String getHostAddress() | 获得 IP 地址 |
2 | String getHostName() | 获得主机名 |
3 | static InetAddress getByName(String host) | 根据主机名获得 IP 地址 |
测试代码:
import java.net.InetAddress;
import java.net.UnknownHostException;public class Text{public static void main(String[] args) throws UnknownHostException {//(1)获取InetAddress的方式InetAddress ia=InetAddress.getLocalHost(); //本机System.out.println("获取主机IP地址:"+ia.getHostAddress());System.out.println("获取主机名称:"+ia.getHostName());//(2)根据域名得到InetAddress对象InetAddress ia2=InetAddress.getByName("www.baidu.com");System.out.println("百度服务器的IP地址:"+ia2.getHostAddress());System.out.println("主机名称:"+ia2.getHostName());//(3)根据IP地址获取一个InetAddress对象InetAddress ia3=InetAddress.getByName("180.101.49.42");System.out.println("服务器主机IP:"+ia3.getHostAddress());System.out.println("180.101.49.42:"+ia3.getHostName());//如果61.135.253.15IP地址不存在或者DNS(域名解析系统)不允许进行IP地址和域名的映射}
}
效果图:
3.InetSocketAddress 类
此类用于实现 IP 套接字地址 (IP 地址+端口号),用于 socket 通信
4.InetSocketAddress 类常用的方法
序号 | 方法 | 描述 |
---|---|---|
1 | InetAddress getAddress() | 获取 InetAddress 对象 |
2 | int getPort() | 获取端口号 |
3 | String getHostName() | 获取主机名 |
测试代码:
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.UnknownHostException;public class Text{public static void main(String[] args) throws UnknownHostException {//创建对象InetSocketAddress tsa=new InetSocketAddress("localhost", 9999);InetSocketAddress tsa2=new InetSocketAddress("127.0.0.1", 9999);InetSocketAddress tsa3=new InetSocketAddress("192.168.0.195", 9999);InetAddress ia=InetAddress.getByName("192.168.0.195");//("localhost");InetSocketAddress tsa4=new InetSocketAddress(ia, 9999);System.out.println("主机名称:"+tsa4.getHostName());System.out.println("主机IP地址:"+tsa4.getAddress());}
}
效果图;
5.URL 类
URL(Uniform Resource Locator)
统一资源定位符,由 4 部分组成:协议 、存放资源的主机域名、端口号和资源文件名。
https://www.baidu.com/?tn=98010089_dg
URL 是指向互联网“资源”的指针
资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,例如对数据库或搜索引擎的查询
6.URL 类常用方法
序号 | 方法 | 描述 |
---|---|---|
1 | String getProtocal() | 获取此 URL 的协议名称 |
2 | String getHost() | 获取此 URL 的主机名(如果适用) |
3 | int getPort() | 获取 URL 的端口号 |
4 | String getFile() | 获取此 URL 的文件名 |
5 | getDefaultPort() | 获取与此 URL 关联协议的默认端口号 |
6 | getPath() | 获取此 URL 的路径部分 |
测试代码:
import java.net.InetAddress;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.UnknownHostException;public class Text{public static void main(String[] args) throws UnknownHostException, MalformedURLException {URL url=new URL("https://www.baidu.com/?tn=98010089_dg");System.out.println("协议名称:"+url.getProtocol());System.out.println("主机名称:"+url.getHost());System.out.println("端口号:"+url.getPort());System.out.println("获取资源路径:"+url.getFile());System.out.println("获取资源路径:"+url.getPath());System.out.println("获取默认端口:"+url.getDefaultPort());}
}
效果图: