进阶day11-网络编程_UDP的客户端实现

This commit is contained in:
2026-03-26 11:12:56 +08:00
parent 408933e7d4
commit f2707af757

View File

@@ -0,0 +1,45 @@
package com.inmind.udp02;
import java.io.IOException;
import java.net.*;
/*
在java中使用DatagramSocket来表示UDP的客户端和服务端
构造方法
DatagramSocket() 创建客户端的Socket对象系统会随机分配一个端口号。
DatagramSocket(int port) 创建服务端的Socket对象并指定端口号。
常用方法:
void send(DatagramPacket p) 发送数据包
void receive(DatagramPacket p) 使用数据包接收数据
DatagramPacket :数据包
DatagramPacket(byte[] buf, int length, InetAddress address, int port) 创建发出去的数据包对象
DatagramPacket(byte[] buf, int length) 创建接收数据的数据包对象
int getLength() 返回要发送的数据的长度或接收到的数据的长度
需求使用UDP实现快速通信实现1发1收
*/
public class UdpClientDemo02 {
//UDP客户端实现
public static void main(String[] args) throws IOException {
//1.创建客户端对象(丢飞饼的人)
DatagramSocket client = new DatagramSocket();
//2.创建数据包对象,封装要发出去的数据(创建一个飞饼)
/*
DatagramPacket(byte[] buf, int length, InetAddress address, int port) 创建发出去的数据包对象
参数一:封装要发出去的数据的字节数组
参数二:发送出去的字节的长度
参数三服务端的IP地址找到服务器
参数四:服务端的程序的端口号
*/
byte[] bytes = "我爱javajava爱我".getBytes();
DatagramPacket packet = new DatagramPacket(bytes,bytes.length, InetAddress.getLocalHost(),10022);
//3.客户端正式发送数据包出去(丢飞饼)
client.send(packet);
System.out.println("客户端数据发送完毕~~~");
client.close();
}
}