Java 网络编程:(二)InetAddress 类_InetSocketAddress 类_URL 类

news/2024/11/17 0:50:01/

InetAddress 类_InetSocketAddress 类_URL 类

    • 1.InetAddress 类
    • 2.InetAddress 类常用的方法
    • 3.InetSocketAddress 类
    • 4.InetSocketAddress 类常用的方法
    • 5.URL 类
    • 6.URL 类常用方法

1.InetAddress 类

封装计算机的 IP 地址,不包含端口号

2.InetAddress 类常用的方法

序号方法描述
1String getHostAddress()获得 IP 地址
2String getHostName()获得主机名
3static 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地址和域名的映射}
}

效果图:
InetAddress 类

3.InetSocketAddress 类

此类用于实现 IP 套接字地址 (IP 地址+端口号),用于 socket 通信

4.InetSocketAddress 类常用的方法

序号方法描述
1InetAddress getAddress()获取 InetAddress 对象
2int getPort()获取端口号
3String 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());}
}

效果图;
InetSocketAddress 类

5.URL 类

URL(Uniform Resource Locator)
统一资源定位符,由 4 部分组成:协议 、存放资源的主机域名、端口号和资源文件名。
https://www.baidu.com/?tn=98010089_dg

URL 是指向互联网“资源”的指针
资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,例如对数据库或搜索引擎的查询

6.URL 类常用方法

序号方法描述
1String getProtocal()获取此 URL 的协议名称
2String getHost()获取此 URL 的主机名(如果适用)
3int getPort()获取 URL 的端口号
4String getFile()获取此 URL 的文件名
5getDefaultPort()获取与此 URL 关联协议的默认端口号
6getPath()获取此 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());}
}

效果图:
URL


http://www.ppmy.cn/news/796587.html

相关文章

GD32F303RCT6PWM及SPWM配置

文章目录 前言一、原理介绍二、代码 1.GD32F303RCT6的PWM配置2.GD32F303RCT6的SPWM配置总结 前言 最近在使用GD32F303的芯片替换STM32F303,自己也在网上查阅了资料但关于具体实现的描述还是较少,希望下面的东西可以帮到大家。 一、原理介绍 在这里不做…

使用GD32USBFS复合设备数据发送时出现错误问题

问题现象 解决方法排查过程 最近使用GD32F4定义了一个USB复合设备,有三个接口Interface,第一个接口用于HID键盘,后两个用于自定义信息发送。设备插入电脑显示设备枚举成功,三个接口都在,在使用的时候发现前设备两个接口…

oxe通信服务器组件是什么,ALE OminiPCX OXE

1.1 OmniPCX Enterprise Stand-alone System● 用户线 (包括所有类型用户): 15,000 ● 中继线 (包括公网、专网): 10,000 ● 媒体网关/远端模块 (包括IP媒体网关和Crystal媒体网关): 240 ● 远端存活模块 (PCS): 240 ● 支持85个时区 ● VoIP应用: 支持H.323/SIP标准 ● 压缩算…

GD32利用CubeMX构建代码的测试

前言 近期搞到一块GD32F103c8t6的开发板,号称是和STM32F103C8T6 Pin To Pin兼容的,查了一些资料,很多老哥也搞过类似的测试,多半结果是不兼容,具体哪里不兼容,哪些共功能不兼容,老哥们基本不说…

linux php gd库安装,Linux系统gd库安装步骤说明

gd库是PHP处理图形的扩展库,它提供了一系列用来处理图片的API(应用程序编程接口),使用gd库可以处理图片或者生成图片。在网站上,gd库通常用来生成缩略图,或者对图片加水印,或者生成汉字验证码,或者对网站数…

rhel安装php,如何在CentOS和RHEL上安装PHP7

php7.3是php的最新稳定版本,yum存储库正在为php7提供RPM包。本篇文章将使用remi和epel-yum存储库在你的系统上安装所需的软件包,将介绍在CentOS和Redhat7服务器上安装php 7.3、php 7.2、php 7.1。 设置yum存储库 首先,需要在系统上启用Remi和…

JVM 调优测试Jmeter 压测

Jmeter 内存不足了,修个5个线程吧 测试结果: Jmeter配置参数 5个线程,每个线程1秒跑1000次 测试串行吞吐量 -XX:PrintGCDetails -Xmx128M -Xms128M -XX:HeapDumpOnOutOfMemoryError -XX:UseSerialGC -XX:PermSize32M GC回收4次 吞吐量138…

RK1126从入门到放弃:(一)编译篇

安装必备软件: apt-get install repo git ssh make gcc libssl-dev liblz4-tool \ expect g patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \ qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g-multilib unzip \ device-t…