java 一文讲透API [常用类 + 常用工具](20万字博文)

news2024/11/16 16:00:09

目录

一、前言

二、API 简介

        1.什么是API?

        2.java中组件的层次结构 : 

        3.什么是模块

三、API(常用类)

        1.Object类

        2.String类

        3.StringBuilder 和 StringBuffer类

        4.Math类 和 System类

        5.Date 和 Calender类

        6.八大包装类

        7.常用类补充  ——  Arrays类

        8.常用类补充  ——  BigInteger 和 BigDecimal类

四、API(常用工具)

        1.集合

        2.IO流

                0° 拾枝杂谈

                1° 异常基础

                2° File类基础

                3° IO流基础

五、API 专题总结​​​​​​​


一、前言

        本篇博文是对Java API 的一个全面总结,同时也囊括了我们API——常用类以及API——常用工具” 两大专题的几乎全部内容。屏幕前的你一定或多或少地听说过“API”这个由三个字母组成的响亮名号;up出这篇博文的目的重点是梳理API中的常用类和常用工具,而不是重点说API本身。

        本篇博文将会从API介绍API常用类,以及API常用工具这三个大的方面同大家娓娓而谈。其中,常用类部分涵盖了诸如Object,String,StringBuffer和StringBuilder,八大包装类等所有常见的类常用工具部分包括了集合的全部内容和IO流的全部内容;因此博文质量是过关的注意 : 代码中的注释也很重要。点击侧边栏目录或者文章开头的目录可以跳转。良工不示人以朴,所有文章都会适时改进。感谢阅读!


二、API 简介

        1.什么是API?

        API全称"Application Programming Interface",指应用程序编程接口。当然,我们这里说的API指的是API文档,通常叫做“java文档”,是Java中提供的类的使用说明书

        我们可以直接在浏览器搜索“API+ 当前使用的JDK的版本号”就可以找到java官方的API文档,如下图所示 : 

        API(JDK17.0)链接如下 : 

https://docs.oracle.com/en/java/javase/17/docs/api/https://docs.oracle.com/en/java/javase/17/docs/api/        那么,有了API我们能做些什么呢?

        当我们遇到没见过的类或者方法,就可以直接在API文档中进行查找。

        以String类为例,首先在搜索框输入String,并确定要查看的String类。如下图所示,

        点击进入后,首先我们可以看到一些关于String类的简单介绍,包含类属于哪个模块哪个包下,以及它的一些继承关系和实现关系。如下图所示 : 

        并且,该类所有的构造器,属性,和方法都被列举在了API文档中并出给了说明。如下图所示 : 

        当然,你也可以利用浏览器自带的翻译功能将页面翻译为中文。不过,up建议,除非是真的看不懂的情况下,不建议使用中文的API文档。 

        2.java中组件的层次结构 : 

        模块(module)——> 包(package)——> 类或接口(class / interface

        3.什么是模块

        module,模块,是java9开始提供的一种新的java基础组件,在包(package)的基础上又进行了一次封装,可以认为是包的容器。


三、API(常用类)

        1.Object类

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129293721?spm=1001.2014.3001.5501https://blog.csdn.net/TYRA9/article/details/129293721?spm=1001.2014.3001.5501


                Object类主要内容包括 : 

                ①Object类基本介绍

                ②Object类构造方法

                ③Object类成员方法

                ④JavaBean 重写 Object类的方法

        2.String类

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129348766?spm=1001.2014.3001.5501https://blog.csdn.net/TYRA9/article/details/129348766?spm=1001.2014.3001.5501


                String类主要内容包括 : 

                ①String类介绍和溯源

                ②String类构造器

                ③不同方式创建String类对象的区别

                ④String类常用成员方法(判断功能 + 获取功能 + 转换功能)

        3.StringBuilder 和 StringBuffer类

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129368975?spm=1001.2014.3001.5501https://blog.csdn.net/TYRA9/article/details/129368975?spm=1001.2014.3001.5501


                StringBuilder 和 StringBuffer类主要内容包括 : 

                ①StringBuffer类介绍和溯源

                ②StringBuffer类常用构造器和常用方法

                ③StringBuffer类  VS  String类

                ④StringBuilder类介绍和溯源

                ⑤StringBuilder类常用构造器和常用方法

        4.Math类 和 System类

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129420332?spm=1001.2014.3001.5501https://blog.csdn.net/TYRA9/article/details/129420332?spm=1001.2014.3001.5501


                Math 和 System类主要内容包括 : 

                ①Math类介绍

                ②Math类常用方法演示

                ③System类介绍

                ④System类常用方法演示

        5.Date 和 Calender类

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129449704?spm=1001.2014.3001.5501https://blog.csdn.net/TYRA9/article/details/129449704?spm=1001.2014.3001.5501


                Date 和 Calendar类主要内容包括 : 

                ①Date类介绍

                ②SimpleDateFormat类介绍和引入

                ③Calendar类介绍

                ④Calendar类使用

                ⑤LocalDateTime,LocalDate,LocalTime的引入和使用

                ⑥时间戳Instant的引入和使用

        6.八大包装类

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129317036?spm=1001.2014.3001.5501https://blog.csdn.net/TYRA9/article/details/129317036?spm=1001.2014.3001.5501


                八大包装类主要内容包括 : 

                ①包装类简介和溯源

                ②关于拆箱和装箱

                ③String类型与基本类型的相互转化

                ④String类型与包装类型的相互转化

                ⑤八大包装类的常用成员方法汇总(含演示)

        7.常用类补充  ——  Arrays类

        ①前言

        关于Arrays类,up有些纠结。诚然,Arrays类中一些方法的使用频率还是比较可观的。但是吧,如果单独出一篇博文仅仅去演示Arrays类的常用方法,多少显得没有营养,有些水博文的味道,虽然up很喜欢水博文(bushi);可如果讲得细致一些,包含Arrays类的源码解读和断点调试的过程,放到基础阶段又有些突兀,因为Arrays类的一些方法,在底层源码中不但涉及了java 四种内部类中最难的匿名内部类(内部类up已讲过,放在了 java 进阶专栏,非此基础专栏),而且牵涉到数据结构与算法中的二叉查找等内容(up计划将来发布到 java 数据结构与算法专栏)。因此,Arrays类对于"力求完美"的up来说,就属于这么一个上不上,下不下的位置,相当尴尬。思绪良久,最终计划先暂时将它作为一个补充类放到本篇API总结博文中的常用类位置,简单演示一下它的几个常用方法,明面上也算是我讲到过了。之后如果有机会,我们再对它进行仔细剖析。

        ②简介

        Arrays类是常用类中的一个工具类,其中包含了一系列静态方法,用于管理和操作数组(比方说查找和排序)。

        ③常用方法介绍演示

                1° static String toString(...[] a) : 

                该方法可以将指定类型的数组转换为String类型的表示。这里的"指定类型"既可以是八大基本数据类型,还可以是引用类型。

                2°static void sort(...[] a) : 

                该方法可以将指定类型的数组进行升序排序。

                3°static int binarySearch(...a, ... key) : 

                该方法可以在一个有序数组中查找某个元素是否存在。需要传入数组和要查找的元素。若存在,返回当前元素在数组中的位置,若不存在,确定当前元素在数组中按大小排序应该所在的位置,并返回 - (该位置索引 + 1)。

                4°static ...[] copyOf(...[] original, int newLength) : 

                该方法可以将原数组中指定长度的内容拷贝到新数组中。若指定长度大于原数组长度,则多出来的部分以默认值填充。

                Δ演示 : 

                up以Arrays_类为演示类,代码如下 : 

package csdn.knowledge.api.arrays;

import java.util.Arrays;
import java.util.Objects;

public class Arrays_ {
    public static void main(String[] args) {
    //演示 : Arrays类常用方法
        //1.static String toString(...[] a) :
            int[] array_0 = new int[]{0, 1, 2, 3, 5};
            double[] array_1 = new double[]{2.33, 11.2, 5.5555, 23.24, 211.8};
            Integer[] array_2 = new Integer[]{0, 2, 33, 77, 11, 2, 5};
            String strArray_0 = Arrays.toString(array_0);
            String strArray_1 = Arrays.toString(array_1);
            String strArray_2 = Arrays.toString(array_2);

            System.out.println("array_0的String类型表示 = " + strArray_0);
            System.out.println("array_1的String类型表示 = " + strArray_1);
            System.out.println("array_2的String类型表示 = " + strArray_2);
            System.out.println("==================================");

        //2.static void sort(...[] a) :
            Arrays.sort(array_0);
            Arrays.sort(array_1);
            Arrays.sort(array_2);
            System.out.println("array_0数组升序排序后的字符串表示形式 = " + Arrays.toString(array_0));
            System.out.println("array_1数组升序排序后的字符串表示形式 = " + Arrays.toString(array_1));
            System.out.println("array_2数组升序排序后的字符串表示形式 = " + Arrays.toString(array_2));
            System.out.println("==================================");

        //3.static int binarySearch(...a, ... key) :
            int[] ints = new int[]{1, 2, 5, 11, 23, 24, 77, 141, 211, 985};
            System.out.println("11在ints数组中存在吗,存在请返回索引:" + Arrays.binarySearch(ints, 11));
            System.out.println("77在ints数组中存在吗,存在请返回索引:" + Arrays.binarySearch(ints, 77));
            System.out.println(" 1在ints数组中存在吗,存在请返回索引:" + Arrays.binarySearch(ints, 1));
            System.out.println("==================================");

        //4.static ...[] copyOf(...[] original, int newLength) :
            String[] names1 = new String[]{"大伟哥", "王天一", "钟离", "布洛妮娅", "三鹰仁", "雪之下"};
            String[] names2 = Arrays.copyOf(names1, 3);      //拷贝三个元素过去
            String[] names3 = Arrays.copyOf(names1, names1.length);     //全部拷贝过去
            System.out.println("新数组names2 = " + Arrays.toString(names2));
            System.out.println("新数组names3 = " + Arrays.toString(names3));
    }
}

                运行结果 : 

        8.常用类补充  ——  BigInteger 和 BigDecimal类

        ①前言

        关于BigInteger 和 BigDecimal类,补充这两个类是因为——在某些情况下,我们需要存储或使用非常大的数,比如中国2022年的GDP总值,120万亿,这时候你就算拿long类型存储,也放不下,如下图所示 : 

        再比如,某些情况下,我们需要得到一个精度非常高的小数,不如说圆周率PI 的前30位。就算你用double类型也无法全部保存,虽然IDEA并不会向long类型一样直接报错,但是如果你设法直接输出数据,就会丢失精度。如下所示 : 

    //以下代码仅作演示用,无实际意义。        
    public static void main(String[] args) {
        double temp_b_0 = 3.141592653589793238462643383279;
        System.out.println(temp_b_0);
    }

        输出结果 : 

        因此,为了解决以上两个问题,我们就需要用到BigInteger类BigDecimal类

        ②简介

        BigInteger类型的数字范围较Integer,Long类型的数字范围要大得多,它支持任意精度的整数,也就是说在运算中 BigInteger 类型可以准确地表示任何大小的整数值而不会丢失任何信息

        BigDecimal类则可以保存精度远超double可保存范围内的小数,而不造成数据丢失

        BigInteger类和BigDecimal类都属于java.base模块,java.math包下。这俩之所以这么牛逼,原因在于它们的底层是把一个超大的数或者一个超高精度的小数当成字符串来进行处理的。想使用BigInteger对象 和 BigDecimal对象保存的数进行运算,需要用到类中对应的方法。如下 : 

        ③常用方法介绍演示

                Δ前言 : 因为二者的一些方法在具体使用时大同小异,而且本身这俩就是常用类的一个补充内容,因此此处方法介绍中up仅以BigInteger类为例。(但实际演示中俩个都会演示到的)

                ①BigInteger add(BigInteger val) : 

                该方法可以对BigInteger类对象保存的超大数进行加法运算。可以不作接收。(传入的形参的加数)

                ②BigInteger subtract(BigInteger val) : 

                同上,但进行减法运算。(传入的形参为减数)

                ③BigInteger multiply(BigInteger val) : 

                同上,但进行乘法运算。(传入的形参为乘数)

                ④BigInteger divide(BigInteger val)

                同上,但进行除法运算。(传入的形参为除数)

                Δ演示 : 

                up以BigBig类为演示类,代码如下 : 

package csdn.knowledge.api.big;

import java.math.BigDecimal;
import java.math.BigInteger;

public class BigBig {
    public static void main(String[] args) {
    //演示1 : BigInteger
        //超大数演示
        BigInteger bigInteger = new BigInteger("120000000000000");
        System.out.println("2022年中国国内GDP总值 = " + bigInteger);
        System.out.println("-----------------------------");
        //加法运算
        BigInteger bigInteger1 = new BigInteger("666666666666666666");
        BigInteger bigInteger2 = new BigInteger("333333333333333334");
        System.out.println("超大数1 + 超大数2 = " + bigInteger1.add(bigInteger2));
        //减法运算
        System.out.println("超大数1 - 超大数2 = " + bigInteger1.subtract(bigInteger2));
        //乘法运算
        System.out.println("超大数1 * 超大数2 = " + bigInteger1.multiply(bigInteger2));
        //除法运算
        System.out.println("超大数1 / 6 = " + bigInteger1.divide(new BigInteger("6")));
        System.out.println("\n=============================================================\n");

    //演示2 : BigDecimal
        //超高精度小数演示
        BigDecimal bigDecimal = new BigDecimal("1970.111200123445677889");
        System.out.println("来整个超高精度小数: " + bigDecimal);
        System.out.println("-----------------------------");
        //加法运算
        BigDecimal bigDecimal1 = new BigDecimal("24.4444444444444444444444444444");
        BigDecimal bigDecimal2 = new BigDecimal("1.5555555555555555555555555556");
        System.out.println("超高精度数1 + 超高精度数2 = " + bigDecimal1.add(bigDecimal2));
        //减法运算
        System.out.println("超高精度数1 - 超高精度数2 = " + bigDecimal1.subtract(bigDecimal2));
        //乘法运算
        System.out.println("超高精度数1 * 超高精度数2 = " + bigDecimal1.multiply(bigDecimal2));
        //除法运算
        System.out.println("超高精度数1 / 2 = " + bigDecimal1.divide(new BigDecimal("2")));
    }
}

        运行结果 : 

        ④关于BigDecimal类的一些补充 : 

        在使用BigDecimal类的divide方法时——即进行超高精度小数的除法运算时,注意,jvm可能会抛出异常。这是因为,如果两个小数的相除结果为无限小数时,就算你BigDecimal类对象可以保存特别长,精度特别高的小数,但是你究竟是不能保存一个无限长的小数的。因此这时候jvm会抛出ArithmeticException(算术异常),如下图所示 : 

        当然,对于上述问题java提供了补救的办法。你可以在使用divide方法时额外传入一个参数,如下 : 

 bigDecimal1.divide(bigDecimal2, RoundingMode.CEILING)

        传入RoundingMode.CEILING参数后,可以将运行结果默认保留至分子的小数位数,即截取到无限小数前面和分子相同位数的地方停止。


四、API(常用工具)

        1.集合

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/129899534?spm=1001.2014.3001.5502https://blog.csdn.net/TYRA9/article/details/129899534?spm=1001.2014.3001.5502                        常用工具——集合篇章主要内容包括 : 

                ①集合简介

                ②集合框架图

                ③List集合 万字详解(含源码分析)

                ④Set集合 万字详解(含源码分析)

                ⑤增强for和迭代器 万字详解

                ⑥Map集合 万字详解(含源码分析)

                ⑦Collections类 详解

                ⑧泛型 详解

                ⑨集合框架总结

        2.IO流

        ​​​​​​​        0° 拾枝杂谈

        常用工具——IO流篇章内容较多较杂;up将其分为三部分——①异常;②File类;③IO流基础。

        ​​​​​​​        1° 异常基础

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/127295364https://blog.csdn.net/TYRA9/article/details/127295364                异常基础主要内容包括 : 

                ①异常概述

                ②异常分类

                ③异常的产生机制

                ④异常相关

                ⑤异常处理

                ⑥异常进阶

                2° File类基础

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/127541155https://blog.csdn.net/TYRA9/article/details/127541155                File类基础主要内容包括 : 

                ①File类构造方法的演示

                ②File类成员方法的演示(详细)

                3° IO流基础

                链接如下 : 

https://blog.csdn.net/TYRA9/article/details/127337688https://blog.csdn.net/TYRA9/article/details/127337688                IO流基础主要内容包括 : 

                ①IO流简介(详细)

                ②字符流读写文件(详细)

                ③字节流读写文件(详细)


五、API 专题总结

        API(常用类+常用工具)其实是把javaSE的两个专题放一块儿了。对于常用类专题,大家主要是掌握每个类的特点和常用方法,因为常用类重点的地方就在于它们的常用方法,就和Linux系统下的一些常用指令一样,你能用起来6的飞起,就已经顶好了。而对于常用工具专题,又可分为集合篇章和IO流篇章,对于集合篇章,没得说就是底层源码了,最好能把每个类的底层源码都自己下来Debug扣一扣。对于IO流篇章,异常这一块儿主要是异常的产生机制,以及异常的处理,必须掌握;对于File类,把常用的一些方法用熟练就可以了;对于IO流基础,字符流字节流的体系图,还有缓冲流,拷贝文件,这些都要掌握。

        🆗,以上就是我们API(常用类 + 常用工具)的全部内容了。下一专题是我们java基础的醉后一个专题——多线程基础,我们不见不散。感谢阅读!

        System.out.println("END------------------------------------------------------------------------------");

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

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

相关文章

案例分享 | 汽车电机控制箱螺钉浮高检测

电机控制器是通过主动工作来控制电机按照设定的方向、速度、角度、响应时间进行运动的集成电路,日常生活中的洗衣机、冰箱、印刷机等设备都需要电机控制器来控制其运行工作,是各种机械设备中不可或缺的部件。 在电动车辆中,电机控制器也是关…

C++的类和对象(1)

类和对象 1.面向过程和面向对象的初步认识2.类的引入3. 类的定义 (class关键字)4. 类的访问限定符及封装4.1. 类的访问限定符4.2. 类的封装什么是封装?为什么要封装? 5.类的作用域6.类的实例化 1.面向过程和面向对象的初步认识 C…

LeetCode 1043. 分隔数组以得到最大和

原题链接:1043. 分隔数组以得到最大和 给你一个整数数组 arr,请你将该数组分隔为长度 最多 为 k 的一些(连续)子数组。分隔完成后,每个子数组的中的所有值都会变为该子数组中的最大值。 返回将数组分隔变换后能够得到…

巧用千寻位置GNSS软件| 线路施工放样应用技巧

线路施工放样主要是解决线路工程和水利工程施工中,线路及渠道中线和边坡施工放样编辑的专用程序。千寻位置GNSS软件中完成线路施工放样可按照下述步骤操作。 点击【测量】->【线路施工放样】,选择一条线路放样,如图 5.6-1所示。 图 5.6-1…

跟姥爷深度学习4 从数学计算看神经网络

一、前言 我们前面简单的做了一个气温预测,经过反复调试,效果还不错。实际上在这个方向上我们还可以更进一步优化,但因为我们是学习嘛,主要还是看广度而不是深度。考虑到后面要开始学习卷积网络,我们必须把更基础的内…

打印流,Properties类

打印流只有输出流,没有输入流 package com.hspedu.printstream;import java.io.IOException; import java.io.PrintStream;/*** author 韩顺平* version 1.0* 演示PrintStream (字节打印流/输出流)*/ public class PrintStream_ {public stat…

网络安全-网站漏洞扫描器

网络安全-网站漏洞扫描器 网站漏洞扫描器是用来扫描对方网站可能存在哪些漏洞的工具,我们可以借助网站漏洞扫描器来当作辅助作用去检测对方网站的漏洞。下面我们来介绍一款常用、好用的漏洞扫描器–AWVS。 AWVS 先说缺点-这玩意简称漏扫,你一旦发送&a…

IPSEC相关知识点

1.什么是数据认证,有什么作用,有哪些实现的技术手段? 数字认证证书它是以数字证书为核心的加密技术可以对网络上传输的信息进行加密和解密、数字签名和签名验证,确保网上传递信息的安全性、完整性。 使用了数字证书,即使您发送的…

(PCB系列七)PCB差分信号布线及其要点

1、差分信号的定义 差分传输是一种信号传输的技术,区别于传统的一根信号线一根地线的做法,差分传输在这两根线上都传输信号,这两个信号的振幅相同,相位相反。在这两根线上的传输的信号就是差分信号。信号接收端比较这两个电压的差…

不要老盯着ChatGPT,这几家公司的产品同样不容小觑

Adept.ai 2022 年成立,致力于一款能够代替人类使用电脑、操控软件的AI助手,旗下模型 ACT-1 还处于雏形阶段,但根据官方示例,已经可以完成通过自然语言指令完成特定的任务。公司创始人曾任OpenAI的工程副总裁,后来进入谷…

前端开发APP应该采取什么框架?

近十年,随移动网络在人们生活中的不断渗透以及线上服务需求的不断提升,人们对于桌面应用、APP、小程序、物联网终端设备等的需求不断提升。据公开数据显示,2022年,小程序数量已超550万;工信部数据显示,截止…

会议回顾!2023机器视觉在线研讨会圆满结束

4月20日下午,持续两小时的“融合生态,让制造与视俱进”2023机器视觉在线研讨会圆满结束,此次会议联合机器视觉产业链上中下游厂商,共同分享工业机器视觉领域最新技术和应用案例,专题讲解与观众问答相互交织&#xff0c…

OpenAI API调用

上次简单写了一篇对ChatGPT的一些看法,最近想深入研究一下。 极客时间上有个课程《AI大模型之美》,看了一下还可以。当做入门是不错的,但还是有很多细节可以打磨,不过毕竟是在风口上的课,也能接受。 本次演示如何调用…

【小知识点总结】Java中的split函数的用法(二)

一、String.split()函数有两种形式 split(String regex) 会默认忽略字符串后面的分隔符split(String regex,int limit) regex:可以是字符串或者正则表达式 limit:可以限制返回的数组的元素个数,当其值为-1时,表示任意大小 // s.split("-")会忽…

阿赵的MaxScript学习笔记分享十五《MaxScript界面的进阶应用》

MaxScript学习笔记目录 大家好,我是阿赵,之前介绍过MaxScript的各种UI控件的用法,这次介绍一些稍微复杂一点的用法。 一、例子介绍 这次要做的例子,有一部分是使用了dotNet的UI控件,一部分是MaxScript自带的UI用法&a…

理解Vuex【Vue】

5. vuex 5.1 理解vuex 5.1.1 vuex是什么 概念:专门在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理(读/写),也是一种组件间通信的方式&#x…

AI风范,院士点赞丨北京人工智能峰会暨AI金雁奖颁奖典礼成功举办,实在智能再获AI金雁奖

4月14日,由中国电子商会人工智能委员会主办,中国创业者俱乐部、北京集智未来人工智能产业创新基地联合主办的“2023北京人工智能峰会暨AI金雁奖颁奖典礼”举行,汇聚了人工智能各领域的产学研专家、院士、人工智能企业代表近300人,…

Jenkins自动拉取SVN源代码构建打包vue前端项目

目录 1.功能需求 2.安装插件 2.1 安装NodeJS插件 2.2 安装SVN插件 3.配置环境 3.1 NodeJS环境 4.新建任务配置部署信息 4.1 源代码管理 4.2 构建触发器 4.3 构建环境 4.4 构建步骤 5.构建项目 5.1 点击查看控制台日志 1.功能需求 使用Jenkins从SVN上拉取Vue项…

C#基础学习--异步编程

什么是异步 启动程序时,系统会在内存中创建一个新的进程。进程是构成运行程序的资源的集合。进程是构成运行程序的资源的集合。这些资源包括虚地址空间,文件句柄和许多其他程序运行所需的东西 在进程内部,系统创建了一个称为线程的内核&…

思科实验 EIGRP

1.1.1 实验目的 通过对 CCNA 课程中的 EIGRP 实验部分进行回顾,从而更加准确掌握 EIGRP 路由协议的 配置方法,以及对 network 命令的正确理解。并且学会对 EIGRP 路由协议查看排错的相关命 令。 1.1.2 实验拓扑 拓扑说明:本实验由两台思科路…