摘要: hash表 计算机科学中,hash table是一种重要的数据结构,它可以将键映射到值。键值通过hash函数计算后,就得到它对应的值在数组中的位置。哈希也被意译为散列。 图为 用hash表实现的电话簿。 理想情况下每个键值都有属于自己的位置,但实际的哈希函数却不能做到完美,因此会导致哈希冲突,也即不 阅读全文
posted @ 2021-09-17 22:11 Glaci 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 异常 + + | Throwable | | / \ | | / \ | | Error Exception | | / \ | | / \ | | Runtime Other | + + Runtime Exception是unchecked未受检异常,Other是checked检查异常。通常在程 阅读全文
posted @ 2021-09-13 10:34 Glaci 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 证书颁发机构(CA, Certificate Authority)是负责发放和管理数字证书的权威机构,并作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。 如何向 CA 申请证书 (当然不是所有的申请流程都如下所述,但原理都是一样的) 我们需要使用一个 openssl 软件,在 阅读全文
posted @ 2021-09-05 10:08 Glaci 阅读(395) 评论(0) 推荐(0) 编辑
摘要: 本文简单介绍下HTTP协议的重点内容。 HTTP版本迭代 HTTP/0.9 – 单行协议 唯一可用方法GET,是一个非常简陋的协议 HTTP/1.0 构建可扩展性 引入了http头,状态码,完善了其他请求方法,具备了除了html文档外其他文件的传输能力 HTTP/1.1 标准化的协议 1997年发布 阅读全文
posted @ 2021-09-04 18:18 Glaci 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 本文通过Wireshark抓包www.baidu.com的连接过程,展示TSL的握手过程。本文演示的TLS协议版本为1.2。 ping到baidu的ip后进行过滤,可以看到,首先是进行了tcp连接。 不过这里要注意的是,貌似在两个端口进行了连接,可能这样是为了防止某一个请求因为网络延迟出问题吧,直接 阅读全文
posted @ 2021-09-04 17:07 Glaci 阅读(817) 评论(0) 推荐(0) 编辑
摘要: 通过Hash表实现的一个Map结构,下面通过它的三个主要方法介绍一些技术细节。 get get比较简单,就是通过 key 返回对应的 value。 那么如何获取key所在下标呢? 首先计算 key 的 hashcode; 将 hashcode 右移16位与自己异或得到 h; h & (length 阅读全文
posted @ 2021-09-01 10:41 Glaci 阅读(39) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal 用于存储线程私有的对象。 查看 Thread 类的源码可以发现,每个 Thread 对象中都会有一个 ThreadLocalMap 的属性,它是一个 HashMap 结构, key 是 ThreadLoacl 对象, value 是该 ThreadLocal 存储的 Obje 阅读全文
posted @ 2021-08-31 21:59 Glaci 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 单例模式 我们在单例类中添加一个该类的成员属性Instance,并提供一个getInstance方法访问它。一般来说,有如下几种实现。 饿汉式 这里的单例,是由JVM加载类时初始化生成的单例,由JVM保证了线程安全。但是耗资源,起步慢。 public class HungrySingleton { 阅读全文
posted @ 2021-08-31 21:52 Glaci 阅读(26) 评论(0) 推荐(0) 编辑
摘要: Object源码(JDK8) 搬运源码过来,并将其上注释翻译,我们就能很好的理解这个类了。 public class Object { // 注册本地方法,即在虚拟机中对本地方法做链接,是为了类中的本地方法可以被调用 // jdk后面的版本好像没有这段代码了,可能是不需要手动写出来了吧 privat 阅读全文
posted @ 2021-08-31 21:43 Glaci 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 一、简介 什么是Lambda? Lambda就是一个匿名函数。 为什么使用Lambda? 对接口进行非常简洁的实现。可以说是一个语法糖。(原来要新建一个类实现接口,或使用内部类,匿名类)。 Lambda对接口要求? 要求接口中定义的必须要实现的抽象方法有且只有一个。这种接口又称为函数式接口。 jav 阅读全文
posted @ 2021-03-23 16:02 Glaci 阅读(331) 评论(0) 推荐(0) 编辑