一.为什么要学习网络协议 发表于 2019-07-05 只有通过网络协议,才能使一大片机器互相协作、共同完成一件事。 我们常用的网络协议有哪些?这里,我们用一个下单过程,看看互联网世界运行过程中,都使用了哪些网络协议 你先在浏览器中输入 https://www.kaola.com ,这是一个URL。浏览器在这里只知道是”www.laola.com&quo ... 阅读全文 »
九.浅析Java中的参数传值机制(面试题) 发表于 2019-07-05 前言关于传值机制,之前自己再Java基础中了解过,但是昨天晚上却有了一些新的认知,所以记录一下,以便后期复习,今天我们以一道面试题作为开头来引导 一.面试题在main中定义了两个Integer a和b ,通过swap方法,交换两个值,请写出swap方法 二.常规思路(仅仅是思路)我们需要通过一个中间 ... 阅读全文 »
三.StringBuffer和StringBuilder可变的源码分析 发表于 2019-07-05 目标本次源码分析的目标是深入了解 StringBuffer类中 append 方法的实现机制。 分析方法测试代码 1234StringBuffer stringBuffer = new StringBuffer(); //断点 stringBuffer.append("hello" ... 阅读全文 »
五.HashMap底层实现和源码解析(阿里面试题) 发表于 2019-07-05 什么事HashMapHashMap是一种存储双列(key-value)数据结构的集合,进行说明,这种数据结构上提供快存和快取(时间复杂度是1,操作复杂度也是1) HashMap是什么数据结构组成JDK1.7版本之前含1.7:数组+链表JDK1.8之后含1.8:数组+链表+红黑树 进一步细腻的认知:数 ... 阅读全文 »
五、从物理层到MAC层:如何在宿舍里自己组网玩联机游戏? 发表于 2019-07-05 之前我们见证了IP的诞生,一旦机器有了IP,就可以在网络的环境里和其他机器展开沟通了 宿舍六个人,两个人买了电脑,那两台电脑能不能连接起来呢?不会说,当然啊,买个路由器不就行了吗 现在一台家用路由器非常便宜,一百多块的事情。但是在早期的时候绝对是奢侈品 第一层(物理层)使用路由器是第三层的事,我们先 ... 阅读全文 »
六、交换机与VLAN:办公室太复杂,我要回学校 发表于 2019-07-05 上一次,我们在宿舍组件了一个本地的局域网,可以愉快的玩游戏了。当然这是一个简单的场景,因为只有一台交换机,电脑数目很少。今天,我们来看看办公室的网络 拓扑结构是怎么形成的?我们常见到的办公室大多是一排排的桌子,每个桌子都有网口,一排十几个座位就有十几个网口,一个楼层就会有几十个甚至上百个网口。如果算 ... 阅读全文 »
六、Redis-对象 发表于 2019-07-05 前言之前我们说了 Redis 的基本数据结构,但是 Redis 并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统。 除此之外,Redis还引入了基于引用计数技术的内存回收机制和键的空转时长 对象的类型和编码Redis 使用对象来表示数据库中的键和值,当我们在 Re ... 阅读全文 »
十七.String类,Arrays工具类,折半查找,包装类 发表于 2019-07-05 一.String类1.String不可变的原理 String类里面的value是final修饰的 2.StringBuffer和StringBuilderStringBuffer和StringBuilder非常类似,均代表可变的字符序列。 这两个类都是抽象类AbstractStringBuild ... 阅读全文 »
十二.深入理解Java中的迭代器 发表于 2019-07-05 概述Java集合框架的集合类,我们有时候称之为容器。容器的种类有很多种,比如ArrayList、LinkedList、HashSet…,每种容器都有自己的特点,ArrayList底层维护的是一个数组;LinkedList是链表结构的;HashSet依赖的是哈希表,每种容器都有自己特有的数据结构。 ... 阅读全文 »
十八.File类、枚举、异常 发表于 2019-07-05 一.File类的基本用法java.io.File类:代表文件和目录。 在开发中,读取文件、生成文件、删除文件、修改文件的属性时经常会用到本类。 1.File类的常见构造方法:public File(String pathname)以pathname为路径创建File对象,如果pathname是相对路 ... 阅读全文 »