一端UDP程序

hu0905074231 CSDN会员 hu0905074231 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
import java.net.*;
public class MainClass4
{
public static void main(String[] args)
{
PacketSender ps=new PacketSender();
PacketReceiver pc=new PacketReceiver();

}
}
class PacketReceiver {
public static void main(String[] args) throws Exception {
byte[] buffer = new byte[1024];
DatagramPacket packet = new DatagramPacket(buffer, buffer.length);
DatagramSocket socket = new DatagramSocket(5002);
socket.receive(packet);
System.out.println(packet.getSocketAddress());
System.out.println(new String(packet.getData(),0,packet.getLength()));
socket.close();
}
}

class PacketSender {

public static void main(String[] args) throws Exception {
byte[] buffer = "data".getBytes();
InetAddress addr=InetAddress.getByName("localhost");
DatagramPacket packet = new DatagramPacket(buffer, buffer.length, addr, 5002);
DatagramSocket socket = new DatagramSocket();
socket.send(packet);
socket.close();
}
}

不知道我对UDP的理解哪里错了,上面这段程序编译没问题,运行什么都不输出就结束了,UDP不是面对连接的通信,也就是说
PacketSender ps=new PacketSender();
执行完后这个send socket关闭连接,但是数据是发送出去了呀,然后执行
PacketReceiver pc=new PacketReceiver();
应该能收到数据吧,总之现在的问题就是啥都不输出,请帮忙看看,谢谢了。
...全文
评论 6
收藏 已收藏
分享
返回顶部
hu0905074231 CSDN会员
Java SE 62,620 成员 307,251 内容