• Java | 网络编程


    不爱生姜不吃醋⭐️
    如果本文有什么错误的话欢迎在评论区中指正
    与其明天开始,不如现在行动!


    🌴前言

    文章内容是关于网络编程方面的,包括网络编程的概念和常见的软件架构,还有网络编程三要素等知识,图文结合易于理解。


    🌴一、网络编程

    1.概念

    计算机跟计算机之间通过网络进行数据传输。

    2.常见软件架构

    C/S:Client/Server客户端/服务端

    在用户本地需要下载并安装客户端程序,在远程有一个服务器端程序。适合定制专业化的办公类软件,比如:QQ/英雄联盟等。

    在这里插入图片描述
    优缺点

    1. 画面可以非常精美,用户体验好
    2. 需要开发客户端,也需要开发服务端
    3. 用户需要下载和更新的时候太麻烦

    B/SBrowser/Server浏览器/服务器

    只需要一个浏览器,用户通过不同的网址。客户访问不同的服务器。适合移动互联网应用,可以随时随地访问系统,例如:京东网页/淘宝网页等

    在这里插入图片描述
    优缺点

    1. 不需要开发客户端,只需要开发服务端
    2. 用户不需要下载,打开浏览器就能使用
    3. 如果应用过大,用户体验受到影响

    🌴二、网络编程三要素

    网络编程三要素:IP、端口号、协议

    1. IP

    全称:Internet Protocol,是互联网协议地址,也称IP地址。是分配给上网设备的数字标签。通俗理解:设备在网络中的地址,是唯一的标识。

    常见的IP分类:IPv4 和 IPv6

    IPv4
    全称:Internet Protocol version 4,互联网通信协议第四版,采用32位地址长度,分成4组。
    在这里插入图片描述
    这里可以看出,它总共也只有不到43亿个IP,是不够用的,在2019年11月26日全部分配完毕。


    IPv6
    由于互联网的蓬勃发展,IP地址的需求量愈来愈大,为了解决IP不够用的问题,推出了IPv6。全称:Internet Protocol version 6,互联网通信协议第六版。采用128位地址长度,分成8组。
    在这里插入图片描述
    IPv6最多有2^128个IP,形象点说,它可以为地球上每一粒沙子都设定IP

    常见的CMD命令:
    ipconfig:查看本机IP地址
    ping:检查网络是否联通

    Java中的InetAddress类的使用:

    public class Test {
        public static void main(String[] args) throws UnknownHostException {
            //确定主机名称(可以是主机名称,也可以是IP地址)
            InetAddress name = InetAddress.getByName("LAPTOP-F2POP1");//LAPTOP-F2POP1:是我自己的主机名
            //获取此主机的IP地址的主机名
            String hostName = name.getHostName();
            System.out.println(hostName);
            //返回IP地址
            String hostAddress = name.getHostAddress();
            System.out.println(hostAddress);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    2. 端口号

    应用程序设备中唯一的标识
    端口号是由两个字节表示的整数,取值范围:0-65535,其中0-1023之间的端口号用于一些知名的网络服务或者应用。我们自己使用的话用1024以上的端口号就可以了。

    注:一个端口号只能被一个应用程序使用。

    3.协议

    数据网络中的传输的规则。
    计算机网络中,连接和通信的规则被称为网络通信协议。常见的协议:UDP、TCP、HTTP、HTTPS、FTP。

    OSI参考模型:世界互联网协议标准,全球通信规范,单模型过于理想化,未能在因特网上进行广泛推广。
    TCP/IP参考模型:事实上的国际标准。

    在这里插入图片描述
    有关于协议的详细内容可以以查看文章:
    Java | UDP协议
    Java | TCP协议


    🌴总结

    文章内容是关于网络编程方面,多加练习熟能生巧。
    本文中若是有出现的错误请在评论区或者私信指出,我再进行改正优化,如果文章对你有所帮助,请给博主一个宝贵的三连,感谢大家😘!!!


  • 相关阅读:
    【计算机网络】NAT协议
    注意力机制
    window mysql-5.7.43 zip解压包安装
    2022-8-18 第七小组 学习日记 (day42)JDBC+练习题
    Docker换国内源和简单操作
    Python+大数据-Spark技术栈(二)SparkBase&Core
    Python大数据处理利器之Pyspark详解
    JAVA Swing 与 GUI Form
    【Redis】Redis的特性和应用场景 · 数据类型 · 持久化 · 数据淘汰 · 事务 · 多机部署
    YOLO V2详解
  • 原文地址:https://blog.csdn.net/weixin_54620350/article/details/132894693