JAVA TCP-UDP常用构造函数
来源:互联网 发布:车间布局仿真软件 编辑:程序博客网 时间:2024/06/07 12:40
UDP:
DatagramSocket
public DatagramSocket() throws SocketException
public DatagramSocket(int port) throws SocketException
public DatagramSocket(int port,InetAddress laddr) throws SocketException
port:为socket绑定端口,不指定,系统会自动分配未被占用的端口
laddr:为socket绑定IP地址,适用于计算机有多块网卡和多个IP的情况,我们可以明确规定我们的数据通过哪块网卡向外发送和接收哪块网卡收到的数据。(遇到的双网卡问题,应用红色部分的函数构造UDP,即可解决问题,
例:DatagramSocket udpSocket = newDatagramSocket(2425,InetAddress.getByName("192.168.1.2")) ; )
发送一般用第一种构造方法(不用指定端口),接收一般用第二种构造方法(要指定端口)
如果我们的程序不再使用某个Socket,我们应该调用DatagramSocket.close()方法
发送数据时,用Datagram.send()方法
public void send(DatagramPacket p) throws IOException
接收数据时,用Datagram.receive()方法
public void recevie(DatagramPacket p) throws IOException
DatagramPacket
public DatagramPacket(byte [] buf,int length)
public DatagramPacket(byte [] buf,int length,InetAddress,int port)
发送用第二种,接收用第一种
InetAddress
在发送数据时,DatagramPacket构造方法需要传递一个InetAddress的实例对象,InetAddress是用于表示计算机地址的一个类,我们习惯上表示计算机地址是用字符串格式(192.168.0.1),根据字符串地址格式来创建一个InetAddress类的实例对象 用InetAddress.getByName()这个静态方法能够根据我们的条件返回一个InetAddress类的实例对象。
数据接收到DatagramPacket对象中后,通过DatagramPacket.getInetAddress()返回InetAddress类型的对象,转换成用点隔开的字符串型的IP地址用InetAddress.getHostAddress()方法。
byte [] buf=new byte[1024];
buf[]={1,2,33,5,4}
new String(buf,0,buf.length);
buf.toString();
注意最后两行的不同。
TCP
ServerSocket
public ServerSocket() throws IOException
public ServerSocket(int port) throws IOException
public ServerSocket(int port,int backlog) throws IOException
public ServerSocket(int port,int backlog,InetAddress bindAddr) throws IOException
一般用第二种
Socket
public Socket()
public Socket(String host,int port) throws UnknownHostExcetion,IOException
public Socket(InetAddress Address,int port) throws IOException
public Socket(String host,int port,InetAddress localAddr,int localPort()) throws IOException
public Socket(InetAddress address,int port,InetAddress localAddr,int localPort) throws IOException
一般用第二种指定服务器地址和和端口
当客户端和服务器端的两个建立了专线连接后,连接的一端能向另一端连续写入字节,也能从另一端连续读入自己,也就是建立了专线连接的两个Socket是IO流的方式进行数据交换的。Socket.getInputStream方法链接的两个Socket是以IO流的方式进行数据交换的。
Socket.getInputStream返回Socket输入流对象,Socket.geOutputStream返回Socket的输出流对象。
弱点:IO输入输出,数据类型转换
- JAVA TCP-UDP常用构造函数
- 常用tcp/udp端口
- 常用tcp/udp端口
- TCP/UDP常用详解
- java TCP/UDP编程
- Java中的TCP/UDP
- 【java总结】TCP/UDP
- java TCP、UDP笔记
- java-udp与tcp
- TCP/UDP常用端口号
- TCP/UDP 常用端口列表
- Linux TCP/UDP 常用端口
- TCP/UDP 常用端口列表
- TCP/UDP常用端口号
- 1.java常用关键字细节,构造函数
- TCP\UDP常见的函数
- VC中网络编程的常用函数及UDP,TCP协议编程步骤
- java socket通信 TCP UDP
- 作为面试官,告诉你们互联网公司需要什么样的人
- [Qt教程] 第22篇 数据库(二)编译MySQL数据库驱动
- U-Boot启动过程完全分析
- cas+ldap实现单点登录
- Java 中return、continue和break的区别
- JAVA TCP-UDP常用构造函数
- bootstrap学习——CSS样式篇
- mysql存储过程学习
- 顺序栈
- CUPS 以包月形式让你在纽约的合作咖啡厅里无限摄取咖啡
- 集合已修改;可能无法执行枚举操作。
- C#编程基础综合应用_骑士飞行棋
- Android之ListView原理学习与优化总结
- git相关资料