本文概述
- Java DatagramSocket类
- 常用的DatagramSocket类的构造方法
- Java DatagramPacket类
- 常用的DatagramPacket类的构造方法
Java DatagramSocket类Java DatagramSocket类表示用于发送和接收数据报包的无连接套接字。
数据报基本上是一种信息, 但不能保证其内容, 到达或到达时间。
常用的DatagramSocket类的构造方法
- DatagramSocket()抛出SocketEeption:它创建一个数据报套接字, 并将其与本地计算机上的可用端口号绑定。
- DatagramSocket(int port)抛出SocketEeption:它创建一个数据报套接字, 并将其与给定的端口号绑定。
- DatagramSocket(int port, InetAddress address)抛出SocketEeption:它创建一个数据报套接字, 并将其与指定的端口号和主机地址绑定。
常用的DatagramPacket类的构造方法
- DatagramPacket(byte [] barr, int length):创建一个数据报包。该构造函数用于接收数据包。
- DatagramPacket(byte [] barr, int长度, InetAddress地址, int端口):它创建一个数据报包。该构造函数用于发送数据包。
//DSender.java
import java.net.*;
public class DSender{
public static void main(String[] args) throws Exception {
DatagramSocket ds = new DatagramSocket();
String str = "Welcome java";
InetAddress ip = InetAddress.getByName("127.0.0.1");
DatagramPacket dp = new DatagramPacket(str.getBytes(), str.length(), ip, 3000);
ds.send(dp);
ds.close();
}
}
通过DatagramSocket接收DatagramPacket的示例
//DReceiver.java
import java.net.*;
public class DReceiver{
public static void main(String[] args) throws Exception {
DatagramSocket ds = new DatagramSocket(3000);
byte[] buf = new byte[1024];
DatagramPacket dp = new DatagramPacket(buf, 1024);
ds.receive(dp);
String str = new String(dp.getData(), 0, dp.getLength());
System.out.println(str);
ds.close();
}
}
推荐阅读
- finally,final和finalize之间的区别
- Java自定义异常
- 创建一个用作javap工具的程序
- 创建自己的appletviewer工具
- 小程序通讯
- Java匿名内部类
- 所有关于DbxSvc.exe、用途和如何删除它()
- 如何在Word中添加删除线(3种方法和快捷方式)
- 什么是YourPhone.exe以及如何在Windows 10中禁用它()