本文主要是介绍【十五】Java网络编程(能实现计算机自娱自乐的网络编程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
所有知识体系文章,GitHub已收录,欢迎Star!再次感谢,愿你早日进入大厂!
GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual
搜索关注微信公众号“码出Offer”,送你学习福利资源!
目录
一、什么是网络
二、计算机网络
三、网络模型
四、通信协议
五、IP与端口
六、网络编程
七、网络编程之服务器端和客户端相互请求问好
八、网络编程交互(多线程、集合、网络编程、IO流综合案例)
思维导图参考:【十五】Java网络编程思维导图
【综合案例】
(多线程、IO流、网络编程、properties集合)好玩的网络编程交互实现服务器端【ServerSocket】和客户端【Socket】的注册与登录功能
【知识扩展】
TCP的三次握手、四次挥手
一、什么是网络
网络的概念
- 由点和线构成,表示诸多对象间的相互联系
- 比如:
- 蜘蛛网
- 人脉网
- 计算机网络
二、计算机网络
- 为实现资源共享和信息传递,用过通信线路连接起来的若干主机(Host)
- 互联网: (Internet)点与点相连
- 万维网: (WWW - World Wide Web)端与端相连
- 物联网: (Iot - Internet of things)物与物相连
- 网络编程: 让计算机与计算机之间建立连接、进行通信
三、网络模型
- OSI(Oper System Interconnection)开放式系统互联
TCP/IP模型
- 一组用于实现网络互联的通信协议,将协议分为四个层次
四、通信协议
TCP/UDP
- TCP协议: Transmission Control Protocol传输控制协议
- 是一种面向连接、可靠的、基于字节流的传输层通信协议。数据大小无限制。建立连接的过程需要三次握手,断开连接的过程需要四次挥手
- UDP协议: User Datagram Protocol用户数据报协议
- 是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,每个包的大小64KB
五、IP与端口
- IP协议: Internet Protocol Address互联网协议地址/网络协议地址
- 分配给互联网设备的数字标签(唯一标识)
- IP地址分为两种:
- IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数
- 格式: D.D.D.D
- 例如: 255.255.255.255
- IPV6: 16字节128位整数,并分成8段十六进制数,每16位之间用圆点隔开,每6位整数可以转换为一个0~65535的十进制数
- 格式: X.X.X.X.X.X.X.X
- 例如: FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF.FFFF
- IPV4: 4字节32位整数,并分成4段8位的二进制数,每8位之间用圆点隔开,每8位整数可以转换为一个0~255的十进制整数
IPV4的应用分类
- A类: 政府机构,1.0.0.1~126.255.255.254
- B类: 中型企业,128.0.0.1~191.255.255.254
- C类: 个人用户,192.0.0.1~223.255.255.254
- D类: 用于组播,224.0.0.1~239.255.255.254
- E类: 用于实验,240.0.0.1~255.255.255.254
- 回环地址: 127.0.0.1,指本机,一般用于测试使用
- 查看IP命令: ipconfig
- 测试IP命令: ping D.D.D.D
Port
- 端口号: 在通信实体上进行网络通讯的程序的唯一标识
- 端口分类:
- 公认端口: 0~1023
- 注册端口: 1024~49151
- 动态或私有端口: 49152~65535
- 常用端口:
- Mysql: 3306
- Oracle: 1521
- Tomact: 8080
- SMTP: 25
- Web服务器: 80
- FTP服务器: 21
这篇关于【十五】Java网络编程(能实现计算机自娱自乐的网络编程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!