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. UVa11292 - Dragon of Loowater(贪心)
  2. vegas9.0合成计时器
  3. 山西计算机等级考试科目一模拟试题,2011山西省计算机等级考试试题 二级ACCESS一点通科目一...
  4. python元编程之使用动态属性实现定制类--特殊方法__setattr__,__getattribute__篇
  5. Android图表控件MPAndroidChart——曲线图LineChart的使用(财富收益图)
  6. 程序员必看!Android面试10大知识点总结宝典助你通关!年薪50W
  7. 华大基因:新型冠状病毒检测试剂盒日均产能已达8万人份
  8. 解读Linux下的password命令
  9. GridControl 设置自带选中复选框及设置该列列头名称
  10. 备战数学建模34-BP神经网络预测2
  11. adobe官方卸载工具:Creative Cloud Cleaner Tool Mac版
  12. 小技巧(8):Word中自定义目录,并设置自动目录的格式
  13. win7 64位官方旗舰版上搭建ruby on rails的步骤
  14. ElasticSearch读流程
  15. word压缩文件大小,word压缩方法
  16. navigator 导航标签
  17. Pycharm debug Process finished with exit code 1
  18. matlab+cummean,matlab常用操作备忘(2)
  19. Ansible秘钥认证
  20. Spring MVC 如何上传多个文件到指定位置

热门文章

  1. js取整数、取余数的方法总结
  2. GridView 横向滚动
  3. python基础—列表元组作业题
  4. 学习TypeScript数据类型-从零到英雄
  5. utgard连接opcserver报错Caused by: org.jinterop.dcom.common.JIRuntimeException: Access is denied. [0x800
  6. [MFC]利用CMenu手工(非资源脚本)处理菜单、系统菜单
  7. android wifi aware,WifiAware实现及协议模型
  8. android 使用vitamio播放mkv文件实现音轨切换
  9. Android 解决全面屏适配出现黑边问题
  10. C++ 标准库读书杂记6 Tuple