重新详尽的理解HasMap
关于hashCode hashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,hashCode是用来在散列存储结构中确定对象的存储地址的. 1、hashcode是用来查找的,如果你学过数据结构就应该知道,在查找...
关于hashCode hashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,hashCode是用来在散列存储结构中确定对象的存储地址的. 1、hashcode是用来查找的,如果你学过数据结构就应该知道,在查找...
Callable和Future出现的原因 创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果需要获取执行结果,就必须通过共享变量或者使...
获取 IDEA 激活码、PyCharm 激活码、WebStorm 激活码和 DataGrip 激活码,提供详细破解教程与永久激活方法。支持 IDEA 永久激活与破解,免费获取注册码与激活码,解决 2024/2025 版本激活问题,轻松实现所有 JetBrains 工具的激活。
Java 虚拟机将字节流转化为 Java 类的过程。这个过程可分为加载、链接以及初始化 三大步骤。 加载是指查找字节流,并且据此创建类的过程。加载需要借助类加载器,在 Java 虚拟机中,类加载 器使用了双亲委派模型,即接收到加载请求时,会...
MyBatis缓存介绍 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持 1、 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Session,当 Sessio...
模板方法模式 定义 定义了一个算法的骨架。并允许子类为一个或多个步骤提供实现。 定义补充 模板方法是的子类可以在不改变算法结构的情况下,重新定义算法的某些步骤 类型 行为型 适用场景 1、 一次性实现一个算法的不变的部分,并将可变的行为留给...
mybatis 延迟加载 什么是延迟加载 延迟加载又叫懒加载,也叫按需加载,也就是说先加载主信息,需要的时候,再去加载从信息。代码中有查询语句,当执行到查询语句时,并不是马上去DB中查询,而是根据设置的延迟策略将查询向后推迟。 什么时候会执...
代理模式 定义 为其他对象提供一种代理,以控制对这个对象的访问。(代理对象在客户端和目标对象之间起到中介的作用) 优点 1、 代码模式能将代理对象与真实被调用的目标对象分离。 2、 一定程度上降低了系统的耦合度,扩展性好。 3、 保护目标对...
桥接模式 定义 1、 将抽象部分与具体部分分离,使他们都可以独立的变化。 2、 通过组合的方式建立两个雷之间的联系,而不是继承。 类型 结构型 使用场景 1、 抽象和具体实现之间的增加更多的灵活性。 2、 一个类存在两个(或多个)独立变化的...
组合模式 定义 1、 将对象组合成树形结构以表示“部分-整体”的层次结构。 2、 组合模式是客户端对单个对象和组合对象保持一致的方式处理。 类型 结构型 适用场景 1、 希望客户端可以忽略组合对象与单个对象的差异是 2、 处理一个树形结构时...
享元模式 定义 1、 提供了减少对象数量二改善应用所需的对象结构的方法 2、 运用共享技术有效的支持大量粗粒度的对象。 用通俗的大白话来说就是减少对象的数量,提高对象的利用率,减少内存的使用,提高系统性能。 类型 创建型 适用场景 1、 常...