03 2024 档案
摘要:哈希计算(Hashing)是一种将数据通过哈希函数(Hash Function)转换成固定长度的值(hash value)的过程,是一个通用的计算方式。 在Java中的表现就是hashcode()方法,在Object类上,常用于HashMap、HashSet等集合中,用于快速查找、唯一约束等作用。
阅读全文
摘要:相同点: 都不能实例化 都可以被实现或者继承 继承或者实现的子类需要实现全部抽象方法,否则需要声明为抽象类 不同点: 不同点 抽象类 接口 声明 abstract interface 继承/实现 extends implements 构造器 可以有构造器 不能有构造器 方法 抽象方法和具体方法 抽象
阅读全文
摘要:只列出主要新特性 Java 8 Lambda 表达式 函数式接口 Stream API 新的日期和时间 API 默认方法 Optional类 Java 9-11 Java 9 模块化系统 G1成为默认垃圾回收器(之前是CMS,Concurrent Mark-Sweep,即 新生代+老年代 标记清除。
阅读全文
摘要:本文旨在总结多线程情况下集合的使用 Java中的集合大致以下三个时期: 第一代线程安全集合类 以Vector、HashTable为代表的初代集合,使用synchronized在修饰方法,从而保证线程安全。 缺点:效率低。 代码示例 Vectoradd方法源码 /** * Appends the sp
阅读全文
摘要:本文为分布式学习笔记,参考了JavaGuide 各种锁概念介绍: 可重入锁:允许线程在持有锁的情况下多次获取同一个锁,而不会被自己所持有的锁所阻塞,这种特性也被称为锁的可重入性。 自旋锁:与传统的互斥锁不同,自旋锁不会将线程挂起(进入阻塞状态),而是在获取锁时不断循环尝试获取,直到成功为止,因此称为
阅读全文
摘要:本文为分布式学习笔记,参考了JavaGuide 设计分布式ID有两种思路: 第一种是让所有获取ID的机器从同一个地方获取,ID生成器只需要简单自增即可。 第二种是通过一定的算法,使各个机器产生的ID不重复,这也是一种方式。 同一ID生成方式 数据库 数据库主键自增 利用数据库主键自增来产生唯一ID,
阅读全文