目录
前言:学习JAVA的第二十一天(基础)-CSDN博客
网络编程
在网络通信协议下,不同计算机上运行的程序,进行的数据传输。
三要素:
IP地址:设备在网络中的地址,是唯一的标识。
端口号 :应用程序在设备中唯一的标识。
协议:数据在网络中传输的规则,常见的协议有UDP、TCP、http、 https、 ftp。
IP
全称: Internet Protocol,是互联网协议地址,也称IP地址。是分配给上网设备的数字标签。
常见IP的分类:
IPv4: 全称: Internet Protocol version 4,互联网通信协议第四版。采用32位地址长度,分成4组
IPv6: 全称: Internet Protocol version 6,互联网通信协议第六版。采用128位地址长度,分成8组
IPv4的地址分类形式:
公网地址(万维网使用)和私有地址(局域网使用)。
192.168.开头的就是私有地址,范围即为192.168.0.0--192.168.255.255
特殊IP地址:
127.0.0.1,也就是localhost:是回送地址也称本地回环地址,也称本机IP。
查看电脑IP方法:
win+R 输入 cmd 命令中输入ipconfig
InetAddress类
java中表示ip的类
测试类:
java
public static void main(String[] args) throws UnknownHostException {
//获取InetAddress对象
InetAddress address = InetAddress.getByName("192.168.87.1");
System.out.println(address);///192.168.87.1
//获取主机名
System.out.println(address.getHostName());//LAPTOP-MNVDV52U
//获取ip地址
System.out.println(address.getHostAddress());//192.168.87.1
}
端口号
应用设备在设备中唯一的标识(由两个字节表示的整数)
一个端口只能被一个应用软件使用
协议
计算机网络中,连接和通信的规则被称为网络通信协议
UDP协议
- 用户数据报协议(User Datagram Protocol)
- UDP是面向无连接通信协议。
- 速度快,有大小限制一次最多 发送64K,数据不安全,易丢失数据
发送数据测试类:
java
public static void main(String[] args) throws IOException {
//发送数据 创建DatagramSocket对象
DatagramSocket ds = new DatagramSocket();
//打包数据
String str = "何时复西归";
byte[] bytes = str.getBytes();
InetAddress address = InetAddress.getByName("127.0.0.1");
int port = 12345;
DatagramPacket dp =new DatagramPacket(bytes,bytes.length,address,port);
//发送数据
ds.send(dp);
//释放资源
ds.close();
}
接受数据测试类:
java
public static void main(String[] args) throws IOException {
//发送数据 创建DatagramSocket对象
DatagramSocket ds = new DatagramSocket();
//打包数据
String str = "何时复西归";
byte[] bytes = str.getBytes();
InetAddress address = InetAddress.getByName("127.0.0.1");
int port = 12345;
DatagramPacket dp =new DatagramPacket(bytes,bytes.length,address,port);
//发送数据
ds.send(dp);
//释放资源
ds.close();
}
TCP协议
- 传输控制协议TCP(Transmission Control Protocol)
- TCP协议是面向连接的通信协议。
- 速度慢,没有大小限制,数据安全。