一、网络编程

1、概述

(1)什么是计算机网络:将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统.

(2)网络编程的目的:

无线电台:传播交流信息,数据交换、通信

(3)想要达到这个效果需要什么?

如何准确的定位网络上的一台主机?   ip地址+端口号,并且定位到这个计算机上的某个资源

找到了这个主机,如何传输数据呢?

二、网络通信的两个要素

1、如何实现网络的通信:

(1)通信双方的地址:定义到某个ip的某个具体的功能

ip

端口号

(2)规则:网络通信协议:

(3)小结:

1、网络编程中的两个主要问题:

(1)如何准确的定位到网络上的一台或者多台主机

(2)找到主机之后如何进行通信

2、网络编程中的要素:(1)需要找到ip和端口号才能进行通信;(2)网络通信协议

三、ip地址

1、IP地址:InetAddress

(1)唯一定位一台网络上计算机

(2)127.0.0.1 本机localhost

(3)ip地址的分类:

a、IPV4/IPV6:

IPV4:127.0.0.1,由四个字节组成,每个字节的长度都是0~255,大概有42亿个;30亿都在北美,亚洲4亿.2011年就用尽

IPV6:

ipconfig 看到的都是局域网ip,看不到公网ip;128位,8个无符号整数

b、公网(互联网)-私网(局域网)

192.168.xx.xx:局域网,专门给组织内部使用的

域名:记忆ip问题

四、端口port

1、端口表示计算机上的一个程序的进程:

(1)不同的进程有不同的端口号,用来区分软件

(2)被固定0~65535

(3)TCP,UDP:有TCP和UDP两种类型的端口,每个都有65535个,一共有65535*2

a、如果TCP用了80端口,UDP再使用80端口是可以的;如果TCP端口用了80,其他的TCP端口再使用80则是不可以的,端口号不能冲突

(4)端口分类

a、公有端口,一般不要去使用,0-1023

HTTP是80端口

HTTS是443

FTP是21

Telnet:23

b、程序注册端口 2014-49151,分配用户或者程序

Tomcat:8080

MySQL:3306

Oracle:1521

c、动态、私有端口:不建议使用 49152-65535

Java三:网络编程 视频来源:https://www.bilibili.com/video/BV1LJ411z7vY相关推荐

  1. Java基础篇二 视频来源:https://www.bilibili.com/video/BV12J41137hu?p=33spm_id_from=pageDriver

    一.Java流程控制 1.scanner 二.Java方法详解 三.类和对象 1.类和对象的关系 2.构造函数:(1).使用new关键字必须使用构造器,否则会报错;new一个对象本质是在调用构造器 ( ...

  2. 基于Ubuntu的esp32编程学习(https://www.bilibili.com/video/BV1wV4y1G7Vk?p=22vd_source=c89885f80e65caacb539e)

    使用vscode远程连接虚拟机 1.使用git sudo apt install git 安装git git config --global user.email "XXX.com" ...

  3. Java(网络编程)

    Java(网络编程) 参考视频:1.什么是计算机网络(狂神) 1. 概述 地球村 TCP:打电话 UDP:发短信 计算机网络: 计算机网络是指将地理位置不同的,具有独立功能的,多台计算机及其外部设备, ...

  4. JAVA的网络编程【转】

    转自 http://www.cnblogs.com/springcsc/archive/2009/12/03/1616413.html 网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能 ...

  5. 【零基础学Java】—网络编程(五十三)

    [零基础学Java]-网络编程(五十三) 一.软件结构 C/S结构:全称为Client/Server结构,是指客户端和服务器结构,常见的程序有QQ.迅雷等软件 B/S:全称为Browser/Serve ...

  6. Java面向对象 网络编程 上

     Java面向对象 网络编程 上 知识概要:                     (1)网络模型 (2)网络通讯要素 (3)UDP TCP 概念 (4)Socket (5)UDP TCP 传输 ...

  7. Netty:Java 领域网络编程的王者

    一.简介 1. 课程背景 分布式系统的根基在于网络编程,而 Netty 是 Java 领域网络编程的王者. 2. 课程内容 第一部分 NIO 编程,三大组件 第二部分 Netty 入门学习,Event ...

  8. 你对Java网络编程了解的如何?Java BIO 网络编程 | Netty 前期知识

    一步一步走来,之前去学习了JUC并发编程知识,现在终于到Java IO网络编程啦,难啊. 一.BIO介绍 引入: 随着技术的发展,两个或以上的程序必然需要进行交互,于是提供了一种端到端的通信,相当于对 ...

  9. 四十六、深入Java的网络编程(下篇)

    @Author:Runsen @Date:2020/6/9 人生最重要的不是所站的位置,而是内心所朝的方向.只要我在每篇博文中写得自己体会,修炼身心:在每天的不断重复学习中,耐住寂寞,练就真功,不畏艰 ...

最新文章

  1. resin php,resin竟然开始支持PHP
  2. cas server 配置
  3. opencv中 当你直接把别人的程序拖进去无法运行时 解决方法
  4. python方向键控制角色_用python和pygame游戏编程入门-控制角色移动
  5. python内置输入函数_python内置函数 print()
  6. 使用anaconda
  7. 开源:Taurus.MVC 框架 (已支持.NET Core)
  8. Javabean的理解(通过javabean的部分程序)
  9. elasticsearch sort illegal_argument_exception error
  10. Swift - 属性观察者(willSet与didSet)
  11. 私有属性的另类访问方式
  12. numpy教程:数学函数和基本统计函数
  13. python贪吃蛇简单代码_Python贪吃蛇简单的代码
  14. 201871010114-李岩松《面向对象程序设计(java)》第四周学习总结
  15. 迭代回溯的图最大团问题(可得到多组最优解)
  16. oracle开启em服务
  17. 路由器恢复出厂设置后dns服务器未响应,路由器恢复出厂设置后连不上网怎么办?...
  18. pandas dataframe query()
  19. Servlet与表单、数据库综合项目实战【学生信息管理】
  20. android使用google gcm接收push消息需要注意的地方

热门文章

  1. Linux基础知识:架设邮件服务器
  2. Redis之最细命令介绍
  3. MySQLdb._exceptions.OperationalError: (1050, “Table ‘django_content_type‘ already exists“)
  4. [博学谷学习记录]超强总结,用心分享|软件测试之计算机基础(一)
  5. redis设置慢查询日志
  6. android通过链接生成二维码图片
  7. was这么做的负载均衡_关于F5负载均衡器+WAS+Oracle 10g集群的方案的若干问题
  8. php程序设置为utp8,louis vuitton purses uTp8
  9. ArcGIS的工作空间
  10. java大顶堆类,构建大顶堆、堆排序实现(java)