自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ConcurrentHashMap源码解析

出现原因 1hashmap在进行put时,会尝试扩容,扩容时,会使用rehash()这个函数,然后在重新将以前的节点前移到新的表中,可能会出现循环列表,a->b,b->a while(a.next!=null) a=b;原因是线程并发修改的导致的。使得cpu一直在空转,浪费了资源。 2为什么不是用hashtable,hashtable的同步方法之间是互斥的,意思是 这个hashtab...

2019-02-23 16:13:04 124

原创 Vector源码详解

1是一中线程同步(有争议)的容器,底层也是使用数组来储存,不过很多方法都加了syconized实现同步,效率很低,不适合在并发容器,而是作为同步容器,它的数组长度是变大为原来1倍,而且它的长度还以减小。 但并非完全线程安全,因为同步方法内部是互斥安全的,但是方法与方法之间并发是互斥访问的。 private static Vector<Integer> vector=new Vector...

2019-02-19 16:22:54 182

原创 LinkedList的源码详解

ArrayList 和linkedList区别联系 LinkedList与ArrayList一样实现List接口~~~~~~~~,只是ArrayList是List接口的大小可变数组的实现,LinkedList是List接口双向链表的实现。基于链表实现的方式使得LinkedList在插入和删除时更优于ArrayList,而随机访问则比ArrayList逊色些。 LinkedList实现所有可选的列...

2019-02-19 16:22:09 95

原创 ArrayList源码详解

ArrayList 1特点 适合做查找;不适合做删除和插入,这样会复制,移动元素; 查找O(1),删除和插入为O(n) 默认构造器 无参数初始空数组,new时,数组大小仍然为空,一旦添加就扩容变成10; private static final Object[] EMPTY_ELEMENTDATA = {}; <!--与上面都是空数组,但是带大小的构造器初始化时,会使让该数组变成该大小,之...

2019-02-19 15:11:43 333

原创 java策略设计模式

1本身对象持有其他对象, 2本身的行为,依赖于传入的对象 3做到根据传入的对象不同就执行不同的行为 优点:动态改变对象行为 缺点:容易产生很多行为策略对象 客户必须知道每个行为对象 public class Client { public static void main(String[] args) { Duck duck = new Duck(); GaGa gaG...

2019-02-18 20:59:59 740

原创 java面向对象的特征

封装 子类的数据字段设置为private不被其他类通过(A.field)形式直接访问,外部只能通过公开方法得到。下面这个例子就是封装私有字段,对外提供公开接口。 <!--双重否定来获取单例--> public class Singleton{ private Singleton singleton; private Singleton(); public Si...

2019-02-18 20:32:33 135

原创 equals(),==,hashcode()

equals和== 1“==”判断两个引用对象是否指向同一内存地址 2“equals()”判断两者的内容是否相等属于java.lang.Object的方法。每个子类可以覆写该方法来实现自己的内容相等。 3“equals()”Object类中默认是靠" ==”识别,但是其他类像Integer,String会覆盖掉实现自己的equals方法; String a = new String("abc");...

2019-02-18 20:31:18 154

空空如也

空空如也

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

TA关注的人

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