UDP协议是非面向连接的,相对于TCP协议效率较高,但是不安全.UDP协议类似发信息的过程,不管接收方是在线还是关机状态,都会把信息发送出去.但是如果接收方不处于接收信息的状态,发送出去的数据包就会丢失. convert()方法是用来转换字节数组和基本类型. /** * 创建基于udp协议的服务接受端 * @author wxisme * */ public class MyServer { public static void main(String[] args) throws IOExce…
1.概览 在本文中,我们将看到什么是 Java 枚举,它们解决了哪些问题以及如何在实践中使用 Java 枚举实现一些设计模式. enum关键字在 java5 中引入,表示一种特殊类型的类,其总是继承java.lang.Enum类,更多内容可以自行查看其官方文档. 枚举在很多时候会和常量拿来对比,可能因为本身我们大量实际使用枚举的地方就是为了替代常量.那么这种方式由什么优势呢? 以这种方式定义的常量使代码更具可读性,允许进行编译时检查,预先记录可接受值的列表,并避免由于传入无效值而引起的意外行为.…
这一篇我们将会介绍java中try,catch,finally的用法 以下先给出try,catch用法: try { //需要被检测的异常代码 } catch(Exception e) { //异常处理,即处理异常代码 } 代码区如果有错误,就会返回所写异常的处理. 首先要清楚,如果没有try的话,出现异常会导致程序崩溃.而try则可以保证程序的正常运行下去,比如说: try { int i = 1/0; } catch(Exception e) { ........ } 一个计算的话,如果除数…
UDP,全称User Datagram Protocol,用户数据报协议,是TCP/IP四层参考模型中传输层的一种面向报文的.无连接的.不能保证可靠的.无拥塞控制的协议.UDP协议因为传输效率高,常用于即时通信,比如视频/语音聊天,直播等. 1. UDP数据报的格式 用户数据报UDP有两个字段:数据字段和首部字段.首部字段很简单,只有8个字节,有四个字段组成,每个字段的长度都是两字节.各段意义如下: 源端口:源端口号.在需要对方回信时选用.不需要时可用全0. 目的端口:目的端口号.这在终点交付报…
1.基本概念介绍: 首先得简单介绍下UDP. UDP( User Datagram Protocol )协议是用户数据报,在网络中它与TCP协议一样用于处理数据包.在OSI模型中,在第四层——传输层,处于IP协议的上一层.它是一种无连接的协议,每个数据报都是一个独立的信息,包括完整的源或目的地址,它在网络上以任何可能的路径传往目的地,因此能否到达目的地,到达目的地的时间以及内容的正确性都是不能被保证的 但是这种协议却是方便快捷的,因此很多通信工具和游戏仍然采用这种通信方式,虽然有时会出现数据丢帧…
UDP协议 在有些应用程序中,保持最快的速度比保证每一位数据都正确到达更重要.例如,在实时音频或视频中,丢失数据包只会作为干扰出现.干扰是可以容忍的,但当TCP请求重传或等待数据包到达而它却迟迟不到时,音频流中就会出现尴尬的停顿,这让人无法接受的.在其他应用中,可以在应用层实现可靠性传输.例如:如果客户端向服务器发送一个短的UDP请求,倘若制定时间内没有响应返回,它会认为这个包已丢失.域名系统就是采用这样的工作方式.事实上,可以用UDP实现一个可靠的文件传输协议,而且很多人确实是这样做的:网络文…
由于要做app的UDP协议交互,所以就特地学习了下,其实也就类似于java的server和socket,下面就写了个简单的demo 服务端: package com.test1; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetSocketAddress; import java.net.SocketException;…
流在Java中是指计算中流动的缓冲区. 从外部设备流向中央处理器的数据流成为“输入流”,反之成为“输出流”. 字符流和字节流的主要区别: 1.字节流读取的时候,读到一个字节就返回一个字节:字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时.先去查指定的编码表,将查到的字符返回. 2.字节流可以处理所有类型数据,如:图片,MP3,AVI视频文件,而字符流只能处理字符数据.只要是处理纯文本数据,就要优先考虑使用字符流,除此之外都用字节流. 1.字节流: 字…
Java中重点之一就是服务器与客户端的连接,因为是在同一台PC上,所以就设置服务器的地址为“localhost”,注意,我当时试着设置其他名称,但都不行,这个原因还请老司机告一下.另外还要注意,服务端先于客户端运行,废话不多说,上代码了 package com.myinfo; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStre…
一.final关键字 final可以修饰变量.方法及类: 1.当定义一个final变量时,jvm会将其分配到常量池中,其所修饰的对象只能赋值一次,对基本类型来说是其值不可变,引用类型(包括作为函数形参或类变量):引用不可以被修改该.当作为类变量时, 其初始化可以在两个地方,一是其定义处,也就是说在final变量定义时直接给其赋值,二是在构造函数中,这两个地方只能选其一.  2.当修饰一个方法时,该方法在子类中将不能被重写.    通常,如果一个类不允许其子类覆盖某个方法,则可以把这个方法声明为f…