https://note.youdao.com/s/FEoXGdFe

思路:将每位上的数存放在一个数组里,每次从最高位开始遍历,先找到最大的位数,再根据是否为0,得到要加的数

网络编程是使用Java语言编写网络应用程序的过程。Java提供了一系列API(应用程序接口)和工具,使得能够开发网络应用程序。

主要涉及以下:

网络协议:TCP/IP协议、HTTP协议等网络协议。

Socket编程:Socket是一种通信协议,Java提供了Socket类和ServerSocket类来进行Socket编程,实现Java程序与目标服务器之间的通信。

多线程编程:在网络编程中,Java程序通常需要同时处理多个连接或请求,因此需要使用多线程技术来实现并发处理。

远程方法调用(RPC):Java提供了一种远程方法调用机制(RMI),可以让客户端应用程序在不同的Java虚拟机上调用远程对象的方法,实现分布式计算。

Web编程:Java Web编程常常使用Servlet和JSP技术来实现Web应用程序,Servlet是运行在服务器端的Java类,JSP则是在服务器端生成的HTML页面。

三大基本要素

IP地址,端口号和协议。其中,IP地址是网络上的设备的唯一标识符,端口号是应用程序用于与其他应用程序通信的端口,而协议是规定计算机间通信方式的规范。

TCP和UDP协议是最常用的协议之一。

TCP是一种面向连接的协议,在数据传输之前必须先建立连接。TCP连接的建立是通过三次握手完成的。三次握手的过程如下:

客户端发送SYN(同步)数据包给服务器端,表示客户端请求建立连接。
服务器端接收到SYN数据包,并发送SYN-ACK(同步-确认)数据包给客户端,表示已经接收到客户端的请求,准备好接收数据。
客户端接收到SYN-ACK数据包后,发送ACK(确认)数据包给服务器端,表示已经收到了服务器端的确认,可以开始传输数据。

TCP连接的释放是通过四次握手完成的。四次握手的过程如下:

客户端发送FIN(结束)数据包给服务器端,表示客户端请求关闭连接。
服务器端接收到FIN数据包,并发送ACK(确认)数据包给客户端,表示服务器端已经接收到关闭请求。
如果服务器端还有数据需要传输,那么服务器端会发送FIN数据包给客户端。
客户端接收到FIN数据包后,发送ACK数据包给服务器端,表示已经接收到了服务器端的关闭请求,连接成功关闭。

看了一下er图的形状代表的样式,初步做了一个超星的er图:

网络编程学习,项目er图相关推荐

  1. 网络编程学习(11)/ FTP项目(5) ——文件上传和上传断点续存功能

    网络编程学习(11)/ FTP项目(5) --文件上传和上传断点续存功能 `服务端 lib 文件夹下的 main.py 状态码的变化` 文件上传功能 `服务端 lib 文件夹下的 main.py` ` ...

  2. 网络编程学习(10)/ FTP项目(4) ——文件下载和下载断点续存功能

    网络编程学习(10)/ FTP项目(4) --文件下载和下载断点续存功能 服务端 `lib 文件夹下 main.py` 客户端 `client文件夹下 FTPClient.py 代码 interact ...

  3. 网络编程学习(9)/ FTP项目(3) ——目录切换、目录查看功能

    网络编程学习(9)/ FTP项目(3) --目录切换.目录查看功能 调用功能函数以及对参数数量进行判断 客户端 `server 文件夹下 FTPClient.py` 状态码的变化 服务端 `lib 文 ...

  4. 谈一谈网络编程学习经验(06-08更新)

    谈一谈网络编程学习经验 陈硕 giantchen@gmail.com blog.csdn.net/Solstice 2011-06-08 PDF 版下载:https://github.com/down ...

  5. 15Java网络编程学习笔记

    Java网络编程学习笔记 文章目录 1 网络基础 1.1 网络通信 1.2 网络 1.3 IP地址 1.5 域名 1.6 端口号 1.7 网络通信协议 1.8 TCP协议 1.9 UDP协议 2 In ...

  6. 华清远见网络编程学习总结

    这周进行了两天半的网络编程学习和两天来做自己的项目. 首先是学习了UDP(UDP:不保证可靠的无连接协议,在数据发送前,因为不需要进行连接,所以可以进行高效率的数据传输)的服务端和客户端.其适用的情况 ...

  7. C++网络编程学习:服务端多线程分离业务处理高负载

    网络编程学习记录 使用的语言为C/C++ 源码支持的平台为:Windows / Linux 笔记一:建立基础TCP服务端/客户端  点我跳转 笔记二:网络数据报文的收发  点我跳转 笔记三:升级为se ...

  8. C++网络编程学习:网络数据报文的收发

    网络编程学习记录 使用的语言为C/C++ 源码支持的平台为:Windows 笔记一:建立基础TCP服务端/客户端  点我跳转 笔记二:网络数据报文的收发  点我跳转 笔记三:升级为select网络模型 ...

  9. linux 网络编程学习

    linux 网络编程学习  Linux网络编程学习路线 - CTHON - 博客园 (cnblogs.com)

  10. java 网络编程学习笔记

    java 网络编程学习笔记 C/S模式:客户端和服务器 客户端创建流程 1 1.建立Socket端点 2 3 Socket s = new Socket(绑定地址, 绑定端口); 2.确认源数据方式和 ...

最新文章

  1. How to create a simple 2D graphics program?
  2. uvccamera 后台服务_UVCCamera的一些坑
  3. 接口(Interface)的作用
  4. KindEditor - 代码高亮
  5. ORAN专题系列-5:5G O-RAN 一体式小基站硬件白盒化的参考架构
  6. php怎么字符串转成json对象_php如何将字符串转成json_后端开发
  7. 中国科学院计算机研究生面试,19年中科院信工所考研经验分享【初试+复试】
  8. comsol APP开发基础功能应用
  9. 射频拉远单元RRU与数字光纤直放站分析比较
  10. 多传感器融合定位开源工程与论文
  11. 免费PHPCMS采集规则文章采集器采集百万数据
  12. C/C++数据结构——公路村村通(Prim)
  13. 使用STL给选手打分
  14. HDU6124 Euler theorem
  15. python asyncio future_Python 期物之 asyncio.Future
  16. 合肥工业大学c语言是试卷,合肥工业大学2005-2007年C语言程序设计试卷参考答案.doc-资源下载人人文库网...
  17. Chrome游戏《Boxel Rebound》可自制赛道的弹跳小方块
  18. access 中有时候输入需要掩码
  19. 常见数字证书有哪些?
  20. navicate连接greenplum数据库教程

热门文章

  1. 鱼眼相机的车位线感知
  2. aws azure_Microsoft Azure击败AWS的13种方式
  3. linux ls分页命令,Linux常用命令之ls
  4. 运维笔试题收集(一)
  5. JavaScript - Vue经典教程系列-李游Leo-专题视频课程
  6. Idea 设置类、方法注释模板(解决params和return显示问题)---不来虚的 实测有效
  7. 【rmzt:火影忍者鸣人帅气主题】
  8. Python初学习--你的历史我想知道一下
  9. 一个html文档的开始标记,为了标识一个HTML文件开始应该使用的HTML标记是 ( )。...
  10. 指定wsus服务器,WSUS 服务器的搭建;