​Java基础复习笔记 第16章:网络编程

news2024/12/25 9:01:44

1. 网络编程概述

1. 要想实现网络通信,需要解决的三个问题:
- 问题1:如何准确地定位网络上一台或多台主机
- 问题2:如何定位主机上的特定的应用
- 问题3:找到主机后,如何可靠、高效地进行数据传输


2. 实现网络传输的三个要素:(对应解决三个问题)
> 通信要素1:IP地址。对应着解决定位网络上主机的问题
> 通信要素2:端口号。区分同一台主机上的不同进程。
> 通信要素3:通信协议。规范通信的规则,进而实现可靠、高效地进行数据传输

2. 要素1:InetAddress类的使用

1. 作用:准确地定位网络上一台或多台主机


2. IP地址分类
> IP地址分类方式1 :IPv4 和 IPv6

> IP地址分类方式2:公网地址( 万维网使用)和 私有地址( 局域网使用)
      > 192.168.开头的就是私有地址

3. 本地回路地址:127.0.0.1  --->  localhost

4. 域名:  www.atguigu.com    www.baidu.com   www.jd.com
          www.mi.com   www.vip.com
          
5. InetAddress的使用
5.1 作用:InetAddress类的一个实例表示一个具体的ip地址。


5.2 实例化方式与常用方法
> 实例化:getByName(String host) / getLocalHost()
> 方法:getHostName() / getHostAddress()          

3. 要素2:端口号

> 唯一标识设备中的进程(应用程序)
> 不同的进程,需要使用不同的端口号
> 用两个字节表示的整数,它的取值范围是0~65535

4. 要素3:网络通信协议

1. 网络通信协议的目的:实现双方可靠、高效的数据传输。


2. 网络参考模型
> OSI参考模型(7层,过于理想化)
> TCP/IP参考模型
    > 应用层:HTTP、FTP
    > 传输层:TCP、UDP
    > 网络层:IP
    > 物理+数据链路层

5. TCP网络编程、UDP网络编程

  • TCP、UDP的对比
  • 熟悉:TCP的三次握手、四次挥手。
  • 例题
    • 例题1:客户端发送内容给服务端,服务端将内容打印到控制台上。

    • 例题2:客户端发送文件给服务端,服务端将文件保存在本地。

    • 例题3:从客户端发送文件给服务端,服务端保存到本地。并返回“发送成功”给客户端。并关闭相应的连接。

6. URL网络编程

URL(Uniform Resource Locator):
1. 作用:
统一资源定位符,它表示 Internet 上某一资源的地址。

2. URL的格式:
http://127.0.0.1:8080/examples/ym.png
应用层协议  ip地址  端口号  资源地址

3. URL类的实例化及常用方法


4. 下载指定的URL的资源到本地(了解)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1689686.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

eNSP小练习一枚

问答看到的,随便敲了敲,希望各路大佬不吝赐教~ 话说现在的问答全是ai,乌烟瘴气的 首先配置全互通,ip vlan 端口隔离 ospf啥的 SWA # vlan batch 10 20 30 99 # interface Vlanif1ip address 10.1.1.2 255.255.255.0 # interf…

【ETAS CP AUTOSAR工具链】ARXML文件详解

本篇文章首先对ARXML这种文件格式做了一个概述,叙述了这种标签语言的基本语法(如果您用HTML做过网页,那么这种格式您一定不会陌生),然后对ARXML文件都会包含的一些基本信息做了详细的解读,最后基于使用ISOL…

[数据集][目标检测]吸烟检测数据集VOC+YOLO格式1449张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):1449 标注数量(xml文件个数):1449 标注数量(txt文件个数):1449 标注…

鸿蒙开发配置官方地图

一共需要配置 p12 p7b cer csr 四个文件 p12文件配置 注意创建文件名必须是.p12 到AGC创建项目 AppGallery Connect 添加自己的项目名称 我没有开启 暂时不需要 看个人需求 下载刚创建的cer证书 回到我的项目中 点击刚创建的项目 点击这里 四个文件齐全了 "metadata&qu…

近临算法(个人总结版)

背景 近邻算法(Nearest Neighbor Algorithm)是一种基本但非常有效的分类和回归方法。最早由Fix和Hodges在1951年提出,经过几十年的发展和改进,已成为数据挖掘、模式识别和机器学习领域的重要工具。近邻算法基于相似性原则&#x…

DVWA登录页面空白问题解决

问题: 创建完成后打开登录页面,发现打不开,一片空白 解决: php版本不对,更换版本即可

VueHooks Plus:Vue 3 Hooks 的全面解决方案

VueHooks Plus:Vue 3 Hooks 的全面解决方案 文章目录 VueHooks Plus:Vue 3 Hooks 的全面解决方案〇、元信息一、概述快速开始TypeScript 支持交互式 Demo 演示服务器端渲染(SSR)支持基于插件模式的请求函数按需加载安全性和测试 二…

PHP生成二维码+二维码包含logo图片展示

composer require chillerlan/php-qrcode 用到的扩展自己安装(注:只生成二维码只要开gd扩展就行) 仅生成二维码看这个: use chillerlan\QRCode\QRCode;public function QRCode(){$qrcode new QRCode();$url "http://ww…

如何利用51建模网,实现3D模型线上展示和应用?

按照下面的步骤,在51建模网上传3D模型,并编辑完成后,接下来就是如何让这些3D模型得到更好的展示、传播和应用。 一、3D内容快速分享与传播 3D模型在51建模网上传发布后,即可获得一个可分享的链接和二维码,直接分享给客…

jenkins插件之Warnings

Warnings插件,收集静态分析工具报告的编译器警告或问题,并将结果可视化。它内置了对许多编译器的支持(cpp,clang,java等)和工具(spotbugs,pmd,checkstyle,esl…

力扣226. 翻转二叉树(DFS的两种思路)

Problem: 226. 翻转二叉树 文章目录 题目描述思路复杂度Code 题目描述 思路 涉及二叉树的递归解法时往往需要考虑两种思路: 1.在递归遍历时执行题目需要的具体要求; 2.将一个大问题分解为多个小子问题 具体到本体: 思路1:遍历 先…

作业-day-240521

多点思维导图 面试题 1、项目中如何实现TCP的并发 1)、一般的TCP服务器通信,只能完成一个客户端的操作。要实现多客户端的通信,可使服务器端循环创建并收发客户端的通信。 2)、但仅循环服务器使用的情况,由于accept…

股指期权和股指期货的区别

今天期权懂带你了解股指期权和股指期货的区别。在金融衍生品市场,既有股指期货又有股指期权,期货与期权是两种不同的资产。 股指期权和股指期货的区别 权利与义务: 股指期货是一种协议,买卖双方都有义务在合约到期时按照约定的价…

CSS demo演示 20240524

说明&#xff1a;不修改父盒子的样式&#xff0c;只在子盒子上设置定位&#xff0c;让子盒子定位在父盒子右侧。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Document</title><style>…

CGAN|生成手势图像|可控制生成

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f366; 参考文章&#xff1a;TensorFlow入门实战&#xff5c;第3周&#xff1a;天气识别&#x1f356; 原作者&#xff1a;K同学啊|接辅导、项目定制 CGAN&#xff08;条件生成对抗网络&#xf…

项目十二:简单的python基础爬虫训练

许久未见&#xff0c;甚是想念&#xff0c;今日好运&#xff0c;为你带好运。ok&#xff0c;废话不多说&#xff0c;希望这门案例能带你直接快速了解并运用。&#x1f381;&#x1f496; 基础流程 第一步&#xff1a;安装需要用到的requests库&#xff0c;命令如下 pip inst…

Vue3实战笔记(41)—自己封装一个计时器Hooks

文章目录 前言计时器钩子总结 前言 在Vue项目中&#xff0c;封装一个计时器挂钩&#xff08;Hook&#xff09;是一种实用的技术&#xff0c;它允许你在组件中方便地管理定时任务&#xff0c;如倒计时、计时器等&#xff0c;而无需在每个使用场景重复编写相同的逻辑代码。 计时…

uniapp如何使用自定义的图标

http://t.csdnimg.cn/8KenC 以上是原文章,下面内容是从这篇文章转发的 一、导入 1.在官方&#xff08;iconfont-阿里巴巴矢量图标库&#xff09;选择自己想要的图标&#xff0c;加入购物车 2. 在点击购物车下载代码 3.解压文件夹 并更改名字 4.将文件夹&#xff08;iconfont&…

Xline社区会议Call Up|在 CURP 算法中实现联合共识的安全性

为了更全面地向大家介绍Xline的进展&#xff0c;同时促进Xline社区的发展&#xff0c;我们将于2024年5月31日北京时间11:00 p.m.召开Xline社区会议。 欢迎您届时登陆zoom观看直播&#xff0c;或点击“阅读原文”链接加入会议&#xff1a; 会议号: 832 1086 6737 密码: 41125…

软件开发成本估算 5大注意事项

一般来说&#xff0c;软件开发成本估算分为&#xff1a;软件规模估算、工作量估算、成本估算和确定软件开发成本等四个过程&#xff0c;其估算基本流程如下&#xff1a; 软件开发成本估算流程 为了进一步确保估算的准确性&#xff0c;提高资源规划和分配效率&#xff0c;确保软…