项目重构:设计模式(模板方法模式)
在模板模式(TemplatePattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。最近,在项目中,需要调用用户提供的接口发送微信模板信息,然后提供了信息模板{"Personnel
在模板模式(TemplatePattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。最近,在项目中,需要调用用户提供的接口发送微信模板信息,然后提供了信息模板{"Personnel
策略模式(StrategyPattern)属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。其主要目的是通过定义相似的算法,替换ifelse语句写法,并且可以随时相互替换。由于项目中,
@TOCJava集合(Collection)类是我们在工作中运用最多的、最频繁的类。并且集合可以动态扩容。方便开发需求。集合类通常存在于java.util包中,主要由Collection和Map两个体系构成。Collection主要有三个子接口,分别为List(列表)、Set(集)、Queue(队列
如何构建一棵红黑树(分析TreeMap源码)@TOC之前一直就想关于红黑树的文章,JAVA在JDK1.8在hashMap引入了红黑树,解决特殊情况下当链表过程导致的查询过慢的问题。在JDK1.7中,我们都知道hashMap使用"数组"+链表的数据结构实现,使用hashcode取模
146.LRU缓存机制题目地址题目描述运用你所掌握的数据结构,设计和实现一个LRU(最近最少使用)缓存机制。它应该支持以下操作:获取数据get和写入数据put。获取数据get(key)-如果密钥(key)存在于缓存中,则获取密钥的值(总是正数),否则返回-1。写入数据put(key,value)-如