java datagramsocket,Java DatagramSocket和DatagramPacket[通俗易懂]

java datagramsocket,Java DatagramSocket和DatagramPacket[通俗易懂]JavaDatagramSocket和DatagramPacket1JavaDatagramSocket和DatagramPacketJavaDatagramSocket和DatagramPacket类用于无连接Socket编程。2JavaDatagramSocket类JavaDatagramSocket类表示用于发送和接收数据报包的无连接Socket。DatagramSocket基…

大家好,又见面了,我是你们的朋友全栈君。

Java DatagramSocket和DatagramPacket

1 Java DatagramSocket和DatagramPacket

Java DatagramSocket和DatagramPacket类用于无连接Socket编程。

2 Java DatagramSocket类

Java DatagramSocket类表示用于发送和接收数据报包的无连接Socket。

DatagramSocket基本上是一种信息,但不能保证其内容,到达或到达时间。

2.1 Java DatagramSocket类的构造方法

构造方法

描述

DatagramSocket() throws SocketEeption

创建一个DatagramSocket,并将其与本地计算机上的可用端口号绑定。

DatagramSocket(int port) throws SocketEeption

创建一个DatagramSocket,并将其与给定的端口号绑定。

DatagramSocket(int port, InetAddress address) throws SocketEeption

创建一个DatagramSocket,并将其与指定的端口号和主机地址绑定。

3 Java DatagramPacket类

Java DatagramPacket是可以发送或接收的消息。如果发送多个数据包,则它可能以任何顺序到达。此外,不能保证数据包的传递。

3.1 Java DatagramPacket类的构造方法

构造方法

描述

DatagramPacket(byte[] barr, int length)

创建一个DatagramPacket。该构造函数用于接收数据包。

DatagramPacket(byte[] barr, int length, InetAddress address, int port)

创建一个DatagramPacket。该构造函数用于发送数据包。

4 DatagramSocket和DatagramPacket的例子

4.1 通过DatagramSocket发送DatagramPacket

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

/**

* 通过DatagramSocket发送DatagramPacket

*/

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();

}

}

4.2 通过DatagramSocket接收DatagramPacket

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

/**

* 通过DatagramSocket接收DatagramPacket

*/

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();

}

}

4.3 效果演示

先启动DReceiver,再启动DSender

b02879147179af10a5947ad7a50695c7.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131139.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • idea热部署(JRebel实现)

    idea热部署(JRebel实现)idea热部署(JRebel实现)1.安装JRebel插件//1.File->Settings->Plugins->搜索JRebel插件//2.搜索的时候可能任何插件都搜索不到,可以百度查找设置httpProxy配置配置JRebel插件//1.在左下角的JRebel菜单栏找到JRebel插件然后将需要热更新的项目打上对勾即可。启动项目//1.配置完成后使用JRebel按钮进行启动项目,配置成功日志框中会显示JRebel相关的日志信息。

  • SQL嵌套查询_sql嵌套查询返回多个字段

    SQL嵌套查询_sql嵌套查询返回多个字段说到嵌套查询,首先得理解嵌套查询是什么意思,简单来说就是,一个查询语句可以嵌套在另外一个查询语句的where子句中。外层的查询称为父查询(主查询),内层的查询称为子查询(从查询)。嵌套查询的工作方式是由内向外的,即先进行内层查询,外层查询则利用内层查询的结果集作为条件进行查询。当然,嵌套查询不仅仅是select语句的专属,它还可以用在update、insert、delete语句中。如(update…

  • 2021 idea激活码最新(破解版激活)

    2021 idea激活码最新(破解版激活),https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • html5是什么意思,HTML5是什么 HTML5是什么意思?

    html5是什么意思,HTML5是什么 HTML5是什么意思?随着Windows8正式版发布的脚步近在咫尺,近来关于Win8、IE10、HTML5的新闻逐渐增多,很多朋友对于Win8系统以及IE10浏览器都比较了解,但对于HTML5是什么还真有不少朋友不清楚,很多媒体网站在报道IE10浏览器支持最新html5的时候,不少朋友还是一头雾水,以下电脑百事网小编为大家简单介绍下HTML5是什么。HTML5是什么HTML5是什么意思专业的说,HTML5是用于取代1…

    2022年10月27日
  • c语言中uint32是啥意思_uint16数据类型

    c语言中uint32是啥意思_uint16数据类型C++的基础数据类型:C++的主要数据类型,主要分为三类:布尔型,整型(char型从本质上说,也是种整型类型,它是长度为1的整数,通常用来存放字符的ASCII码),浮点型。而*_t是typedef定义的表示标志,是结构的一种标注。即我们所看到的uint8_t、uint16_t、uint32_t都不是新的数据类型,而是通过typedef给类型起得别名。uint8_t/uint…

  • 开发微信公众号步骤_微信公众平台开发

    开发微信公众号步骤_微信公众平台开发磨刀不误砍柴工微信公众号大家肯定都用过。目前微信公众号主要分为订阅号和服务号,每种账号又分为未认证和已认证,它们的差别主要在于具有不同的接口权限,下图(引用自微信开发实战系列)是一些例子:不同类型公众号的权限总体来说,服务号权限>订阅号权限,认证账号权限>未认证账号权限。申请订阅号比较简单,服务号相对复杂点,另外要认证的话还要额外提交一些材料。我们可以根据不同的业务需求去申请不同类型的账号,基本上常用的权限列表已经可以满足大部分的场景。开发微信公众号本质上和通常.

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号