作者: | 来源:互联网 | 2023-07-03 17:31
点击上方“罗晓胜”,马上关注,您的支持对我帮助很大 上期文章 从0到1学java:工具类从0到1学java:集合从0到1学java:文件与流IO 前言 网络编程是指编写运行
点击上方“罗晓胜”,马上关注,您的支持对我帮助很大
上期文章
-
从0到1学java:工具类
-
从0到1学java:集合
-
从0到1学java:文件与流IO
/ 前言 /
网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。
java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。
java.net 包中提供了两种常见的网络协议的支持:
/ 正文 /
网络编程
要点
-
网络基础知识
-
Socket编程
-
Socket原理
-
基于TCP的Socket编程
-
基于多线程的Socket编程
网络基础知识
IP地址和端口号
IP
-
TCP/IP协议
-
协议 —网络中计算机之间通信的规则
-
大多数的网络协议都以TCP/IP协议为基础
-
IP地址
-
IPV4/IPV6
-
IPV4— 4个字节,即32位的二进制数表示
-
IPV6— 16个字节的格式来表示IP地址
端口号
一台计算机运上运行多个网络程序,IP地址只能保证把数据送到该计算机但如何确定把这些数据交给哪个程序呢 * 端口号是一个整数,用于表示该数据帧交给哪个应用程序来处理 * 同一台计算机上不能有两个使用同一个端口的程序运行 * 端口数范围为06535 * 01023用于一些知名的网络服务和应用,用户的普通网络程序应使用1024以上的端口号
TCP与UDP
Socket原理
-
Socket原理
-
TCP套接字
-
较可靠的双向流协议
-
发送任意数量的数据
-
提供消息确认、错误检测和错误恢复等服务
-
UDP套接字
基于TCP的Socket编程
-
利用TCP协议进行通信 两个应用程序,有主从之分 一个称为服务器程(Server), 另外一个称为客户机程(Client)
-
交互过程 (1) 服务器程序创建一个ServerSocket,然后调用accept方法等待客户来连接 (2) 客户端程序创建一个socket 并请求与服务器建立连接 (3) 刚才建立了连接的两个socket在一个单独的线程上对话 (4) 服务器开始等待新的连接请求
-
基于TCP的Socket编程 —— java.net.ServerSocket
-
基于TCP 的Socket编程 —— java.net.Socket
-
InetAddress getInetAddress( )
-
int getPort( )
-
int getLocalPort( )
-
InputStream getInputStream()
-
OutputStream getOutputStream()
-
void close()
-
Socket(String hostName, int port)
-
Socket(InetAddress a, int port)
-
实现客户端套接字
-
构造函数
-
可用方法
/ 总结 /
本文主要讲了网络编程相关的内容,我们现在无时无刻不在和网络中的世界沟通,WEB也好,APP也好,电脑也罢,都是我们连接网络世界的窗口,了解网络知识,就会知道整个网络世界是怎样交流沟通的。
往期推荐:
如何入门做软件开发
为什么我不推荐入行程序员
做全栈开发很难吗
关注我的公众号,学习技术或投稿
长按上图,识别图中二维码即可关注