首页 > 编程语言 >零基础学Java第二十三天之网络编程

零基础学Java第二十三天之网络编程

时间:2024-05-26 21:59:42浏览次数:26  
标签:UDP Java 第二十三 号码 编程 端口 网络 IP地址 连接

网络编程

1. 网络编程

实现多台计算机之间实现数据的共享和传递,网络应用程序主要组成为:

网络编程+IO流+多线程

2. 网络编程三要素

网络通讯的模型:请求-响应,客户端-服务端

三要素:IP地址,端口,协议(数据传输的规则)

2.1. IP地址

IP地址:网络中计算机的唯一标识(IP地址是一个32位的二进制数据,为了方便,将一个字节的二进制转换为一个十进制的数据)

IP地址的组成:*网络号段+主机段*

A类IP地址:第一段号码为网络号码,剩下的三段号码为本地计算机的号码

----可以配置256256256台主机

B类IP地址:前二段号码为网络号码,剩下的二段号码为本地计算机的号码

C类IP地址:前三段号码为网络号码,剩下的一段号码为本地计算机的号码

补充:

特殊地址:

*127.0.0.1* 回环地址,可用于测试本机的网络是否有问题. ping 127.0.0.1

DOS命令 ipconfig:查看本机IP地址

xxx.xxx.xxx.255 广播地址

访问百度(IP和域名–DNS服务器)

一个IP可以对应多个域名,但是一个域名在一个时刻只能对应一个IP

2.2. 端口号

正在运行的程序的标识

  1. A:每个网络程序都会至少有一个逻辑端口

  2. B:用于标识进程的逻辑地址,不同进程的标识不同

  3. C:有效端口:065535,其中01024系统使用或保留端口。

a) 80

b) ftp:23

c) www.baidu.com:80

  1. 通过第三方工具可以查看

注意:端口与协议有关:TCP和UDP的端口互不相干,同一个协议的端口不能重复,不同协议的可以重复

TCP:10086

UDP:10086

2.3. 协议

通信规则,就是数据的传输规则

TCP、UDP都是传输层的协议

TCP

​ 建立连接,形成传输数据的通道;在连接中进行大数据量传输;通过三次握手完成连接,是可靠协议;必须建立连接,效率会稍低,例如:打电话

UDP

​ 将数据源和目的封装到数据包中,不需要建立连接;每个数据报的大小在限制在64k;因无连接,是不可靠协议;不需要建立连接,速度快:例如发短信

;必须建立连接,效率会稍低,例如:打电话

UDP

​ 将数据源和目的封装到数据包中,不需要建立连接;每个数据报的大小在限制在64k;因无连接,是不可靠协议;不需要建立连接,速度快:例如发短信

标签:UDP,Java,第二十三,号码,编程,端口,网络,IP地址,连接
From: https://blog.csdn.net/qq_53720725/article/details/139221366

相关文章

  • 零基础学Java第二十三天之网络编程Ⅱ
    1.InetAddress类用来表示主机的信息练习:C:\Windows\system32\drivers\etc\hosts一个主机可以放多个个人网站www.baidu.com/14.215.177.37www.baidu.com/14.215.177.38www.taobao.com/183.61.241.252www.taobao.com/121.14.89.2532.Socket3.TCP编程API:Socket,S......
  • 分析JAVA打印流的自动刷新
    参考:https://blog.csdn.net/xshsjl/article/details/77076235参考:https://blog.csdn.net/weixin_43369921/article/details/111397253今天遇到了一个奇怪的事情,使用打印流,有一个自动刷新的参数,但设不设置结果貌似没啥影响,下面来研究研究publicPrintStream(OutputStreamout,......
  • UNiX强大的操作系统和编程环境
    Android设计模式一:EIT造型什么是EIT 造型?EIT造型,一种比类的范围更大,比模式(Pattern)稍微小的一种新的代码造型。造型的模型EIT造形是一种基本的结构(Structure),一种概念(Concept);我们称它为”EIT造形(Form)”。参考:https://www.cnblogs.com/myEIT/articles/3294583.html......
  • (读后分享)移动Web前端高效开发实战:HTML 5 + CSS 3 + JavaScript + Webpack + React Nat
    链接:pan.baidu.com/s/1tIHXj9HmIYojAHqje09DTA?pwd=jqso提取码:jqsoHTML5新特性与应用:介绍HTML5的新特性,包括语义化标签、本地存储、设备兼容、连接特性等,并讲解如何在移动Web前端开发中充分利用这些特性提升用户体验。CSS3样式与动画设计:详细讲解CSS3的样式设计和动画效果,包......
  • 【Java笔记】第8章:面向对象的三大特性(封装、继承、多态)
    前言1.三大特性概述2.封装3.继承4.多态结语#include<GUIQU.h>intmain{上期回顾:【Java笔记】第7章:面向对象个人主页:C_GUIQU归属专栏:【Java学习】return一键三连;}前言各位小伙伴大家好!上期小编给大家讲解了Java中的面向对象,接下来讲讲Java中面向......
  • idea启动报错:java.lang.NoClassDefFoundError: org/mybatis/logging/LoggerFactory
    文章目录一、问题二、解决方法一、问题问题描述:idea整合Mybatis-plus的时候,启动报错:java.lang.NoClassDefFoundError:org/mybatis/logging/LoggerFactory二、解决方法可能原因:仔细检查了一下,发现mybatis-spring-boot-starter的包和mybatis-plus-boot-starter的......
  • JDBC & 数据库连接池:详述Java 数据库操作的基础,数据库连接池的使用以及原理,比较常用数
    JDBC基础 JDBC的定义和目的 JDBC(JavaDatabaseConnectivity)是一个用于执行SQL语句的JavaAPI,可以与多种关系数据库进行交互,这的API由一组用Java语言编写的类和接口组成。 JDBC鼓励供应商使用JDBC驱动程序,该驱动程序可以通过数据库管理系统的客户机接口与各个数......
  • Java常用的三个方法 `wait ` `notify` `notifyAll`
    常用的三个方法waitnotifynotifyAllwait();方法使当前线程进入等待状态,直到另一个线程调用该对象的notify()或notifyAll()方法来唤醒它notify();方法唤醒在该对象上调用wait()方法进入等待状态的一个线程,如果有多个线程在等待,则只会唤醒其中一个线程。notifyAll();方......
  • Java队列简介
    在现代应用程序开发中,队列是一种常见且强大的数据结构,用于存储和管理待处理的任务序列。结合MySQL数据库,我们可以利用队列实现任务的持久化存储与高效处理。本文将通过四个案例,详细介绍如何在Java中使用队列,并结合MySQL数据库实现数据的存储与检索,涵盖基础队列操作、消息队列......
  • Java项目:基于SSM框架实现的社区服务管理系统分前后台(ssm+B/S架构+源码+数据库+毕业论
    一、项目简介本项目是一套基于SSM框架实现的社区服务管理系统包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。项目都经过严格调试,eclipse或者idea确保可以运行!该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值二、技术......