大家都知道类的成员变量和方法可以使用private和protected修饰。使用private修饰,表示该类的成员只能在类的内部访问。使用protected修饰,表示该类的成员可以被类的内部、同包下的其它类以及该类的子类访问。从组织结构来分析:类的成员(包过变量、方法、内部类等)的上层结构是类,而类的上层结构是包。如果类可以使用private来修饰,表示该包下的这个类不能被其它类访问,那么该类也失
转自:http://www.cnblogs.com/dolphin0520/p/3920407.html 一.对ThreadLocal的理解 ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。可能很多朋友都知道ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。 这句话从字面上看起来很容易理解,但是真正理
转自:http://www.cnblogs.com/dolphin0520/p/3920373.html volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事
ConcurrentHashMap的目标是实现支持高并发、高吞吐量的线程安全的HashMap。当然不能直接对整个hashtable加锁,所以在ConcurrentHashMap中,数据的组织结构和HashMap有所区别大家都知道,HashMap中未进行同步考虑,而Hashtable则使用了synchronized,带来的直接影响就是可选择,我们可以在单线程时使用HashMap提高效率,而多线程时用
hashmap本质数据加链表。根据key取得hash值,然后计算出数组下标,如果多个key对应到同一个下标,就用链表串起来,新插入的在前面。看3段重要代码摘要:1. public HashMap(int initialCapacity, float loadFactor) { int capacity =
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号