网络编程实战

ip地址的分类:

1、ipv4、ipv6

127.0.0.1:4个字节组成,0-255,42亿;30亿都在北美,亚洲就只有4亿

2011年就用尽了。

ipv6:

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_服务端

2、公网ip、私网ip

实践获得ip地址

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_tcpip_02

端口

端口表示计算机上的一个程序的进程(大概可以这么理解)

比如说一栋楼,是一个ip,每一户都是端口号。

不同的进程有不同的端口号。

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_UDP_03

TCP聊天实现

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_tcpip_04

TCP文件上传

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_tcpip_05

UDP

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_服务端_06


对于UDP并不是很强调客户端或者服务端的概念,谁都可以做服务端客户端的。

UDP聊天实现

注意string是不可读的,必须转成字节!

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_java_07

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_UDP_08

UDP实现多线程聊天

发送端

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_服务端_09


Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_udp_10

接收端

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_java_11


Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_UDP_12

然后开启两个线程

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_java_13

URL下载资源

Java网络编程:UDP/TCP实现实时聊天、上传图片、下载资源等_java_14