JAVA网络编程——UDP

本文介绍了UDP协议的无连接无状态特性,并详细讲解了在JAVA中如何使用DatagramSocket和DatagramPacket进行UDP网络编程。通过实例展示了发送方和接受方的实现,强调了在同一个主机上测试时需要注意的端口问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

UDP协议简述

计算机通讯

数据从一个IPport出发(发送方),运输到另外一个IP的port(接受方)。

UDP 协议

UDP协议是无连接无状态的通讯协议,

  • 发送方发送消息,如果接受方刚好在目的地,则可以被接受。如果接受方不在目的地,这个消息就丢失了。
  • 发送方也无法得知,是否发送成功
  • UDP的好处就是简单,节省,经济

JAVA udp网络编程实现

实现类

DatagramSocket

  • 它是UDP通讯的数据管道
  • 具有sendreceive两种方法
  • 它可以绑定一个IPport(可选,多网卡)。

DatagramPacket

  • 集装箱: 封装数据
  • 地址标签: 目的地IP + port

实例

接受方

import java.net.*;

public class UdpRecv {
   
   
	public static void main(String[] args) throws Exception
	{
   
   
		DatagramSocket ds = new DatagramSocket(3000);// 数据管道,定义端口为3000
		byte[] buf = new byte[1024];
		DatagramPacket dp = new DatagramPacket(buf, 1024);//定义了一个封装数据的集装箱
		
		System.out.println("UdpRecv:我在等待消息");
		ds.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值