自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 策略模式

一、什么是策略模式以及策略模式功能 1.1 为什么需要策略模式? 1)完成一项任务,往往可以有多种不同的方式,每一种方式称为一个策略,我们可以根据环境或者条件的不同选择不同的策略来完成该项任务。 2)在软件系统中,很多算法可以实现某一功能,比如查找、排序。这里以查找算法为例说明,如果我们需要提供多种查找算法,可以将这些算法写在一个类中,在该类中提供多个方法,每一个方法对应一个具体的查找算法;当...

2019-03-18 23:55:27 243

原创 装饰者、JDK动态代理和CGLIB动态代理 三种设计模式 教你实现AOP

定义一个普通dao类和daoImpl类来模式实现三种aop,对dao类中的方法进行增强日志功能 定义一个DAO接口: public interface Dao { void insert(); void query(); void update(); } DAO接口实现类: public class DaoImpl implements Dao { @O...

2019-03-11 22:50:23 199

原创 ArrayList源码分析(JDK1.8)

一、数据结构 ArrayList的数据结构是Object类型的数组,可以存放所有数据类型,我们对ArrayList的所有操作都是基于数组的 二、ArrayList源码分析 2.1 类的属性 public class ArrayList<E> extends AbstractList<E> implements List<E>, Ran...

2019-03-10 16:04:55 212

原创 HashMap源码分析 --- JDK1.8,JDK1.7源码对比

一 、前言 JDK1.8相对于1.7,变化最大的地方就在于将数组+链表拆分为数组+链表+红黑树的组合,其目的就在于解决 hash冲突增加随之链表长度增加后,存储效率降低的问题,因为存储都需要遍历链表;其次将存放key-value的Entry类换成了Node类,功能是一样的,只不过换了个名字而已。 HashMap的精髓就在于用key计算的hash值来散列插入的位置,这样既能解决key-v...

2019-03-09 23:51:35 167

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除