java.util-学习(浏览)

来源:互联网 发布:一千左右机械键盘 知乎 编辑:程序博客网 时间:2024/05/02 06:44
一:java.util 接口和类
包含 collection 框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。


接口  


Collection 
Collection 层次结构 中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素。


Comparator 
强行对某个对象 collection 进行整体排序 的比较函数。


Deque 
extends Queue<E>
一个线性 collection,支持在两端插入和移除元素。名称 deque 是“double ended queue(双端队列)”的缩写,通常读为“deck”。大多数 Deque 实现对于它们能够包含的元素数没有固定限制,但此接口既支持有容量限制的双端队列,也支持没有固定大小限制的双端队列。


Enumeration
实现 Enumeration 接口的对象,它生成一系列元素,一次生成一个。连续调用 nextElement 方法将返回一系列的连续元素。 


EventListener 
所有事件侦听器接口必须扩展的标记接口。


Formattable 
Formattable 接口必须通过需要执行自定义格式化(使用 Formatter 的 's' 转换说明符)的任何类来实现。此接口允许对格式化任意对象的基本控制。 


Iterator 
对 collection 进行迭代的迭代器。迭代器取代了 Java Collections Framework 中的 Enumeration。迭代器与枚举有两点不同:
迭代器允许调用者利用定义良好的语义在迭代期间从迭代器所指向的 collection 移除元素。
方法名称得到了改进。


List 
extends Collection<E>
有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。


ListIterator 
extends Iterator<E>
系列表迭代器,允许程序员按任一方向遍历列表、迭代期间修改列表,并获得迭代器在列表中的当前位置。ListIterator 没有当前元素;它的光标位置 始终位于调用 previous() 所返回的元素和调用 next() 所返回的元素之间。


Map 
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。


Map.Entry 
映射项(键-值对)。Map.entrySet 方法返回映射的 collection 视图,其中的元素属于此类。获得映射项引用的唯一 方法是通过此 collection 视图的迭代器来实现。这些 Map.Entry 对象仅 在迭代期间有效;更确切地讲,如果在迭代器返回项之后修改了底层映射,则某些映射项的行为是不确定的,除了通过 setValue 在映射项上执行操作之外。


NavigableMap 
extends SortedMap<K,V>
扩展的 SortedMap,具有了针对给定搜索目标返回最接近匹配项的导航方法。方法 lowerEntry、floorEntry、ceilingEntry 和 higherEntry 分别返回与小于、小于等于、大于等于、大于给定键的键关联的 Map.Entry 对象,如果不存在这样的键,则返回 null。类似地,方法 lowerKey、floorKey、ceilingKey 和 higherKey 只返回关联的键。所有这些方法是为查找条目而不是遍历条目而设计的。


NavigableSet 
extends SortedSet<E>
扩展的 SortedSet,具有了为给定搜索目标报告最接近匹配项的导航方法。方法 lower、floor、ceiling 和 higher 分别返回小于、小于等于、大于等于、大于给定元素的元素,如果不存在这样的元素,则返回 null。可以按升序或降序访问和遍历 NavigableSet。descendingSet 方法返回 set 的一个视图,该视图表示的所有关系方法和方向方法都是逆向的。升序操作和视图的性能很可能比降序操作和视图的性能要好。此外,此接口还定义了 pollFirst 和 pollLast 方法,它们返回并移除最小和最大的元素(如果存在),否则返回 null。subSet、headSet 和 tailSet 方法与名称相似的 SortedSet 方法的不同之处在于:可以接受用于描述是否包括(或不包括)下边界和上边界的附加参数。任何 NavigableSet 的 Submap 必须实现 NavigableSet 接口。


Observer 
一个可在观察者要得到 observable 对象更改通知时可实现 Observer 接口的类。


Queue 
extends Collection<E>
在处理元素前用于保存元素的 collection。


RandomAccess 
List 实现所使用的标记接口,用来表明其支持快速(通常是固定时间)随机访问。此接口的主要目的是允许一般的算法更改其行为,从而在将其应用到随机或连续访问列表时能提供良好的性能。


Set 
extends Collection<E>
一个不包含重复元素的 collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。


SortedMap 
extends Map<K,V>
进一步提供关于键的总体排序 的 Map。该映射是根据其键的自然顺序进行排序的,或者根据通常在创建有序映射时提供的 Comparator 进行排序。


SortedSet
extends Set<E>
进一步提供关于元素的总体排序 的 Set。这些元素使用其自然顺序进行排序,或者根据通常在创建有序 set 时提供的 Comparator 进行排序。该 set 的迭代器将按元素升序遍历 set。提供了一些附加的操作来利用这种排序。(此接口是 SortedMap 的 set 对应接口)。


类  


AbstractCollection 
extends Object
implements Collection<E>
此类提供 Collection 接口的骨干实现,以最大限度地减少了实现此接口所需的工作。


AbstractList 
extends AbstractCollection<E>
implements List<E>
此类提供 List 接口的骨干实现,以最大限度地减少实现“随机访问”数据存储(如数组)支持的该接口所需的工作。对于连续的访问数据(如链表),应优先使用 AbstractSequentialList,而不是此类。


AbstractMap 
extends Object
implements Map<K,V>
此类提供 Map 接口的骨干实现,以最大限度地减少实现此接口所需的工作。


AbstractMap.SimpleEntry 
extends Object
implements Map.Entry<K,V>, Serializable
维护键和值的 Entry。可以使用 setValue 方法更改值。此类简化了构建自定义映射实现的过程。


AbstractMap.SimpleImmutableEntry 
extends Object
implements Map.Entry<K,V>, Serializable
维护不可变的键和值的 Entry。此类不支持 setValue 方法。在返回线程安全的键-值映射关系快照的方法中,此类也许很方便。


AbstractQueue 
extends AbstractCollection<E>
implements Queue<E>
此类提供某些 Queue 操作的骨干实现。此类中的实现适用于基本实现不 允许包含 null 元素时。add、remove 和 element 方法分别基于 offer、poll 和 peek 方法,但是它们通过抛出异常而不是返回 false 或 null 来指示失败。


AbstractSequentialList 
extends AbstractList<E>
此类提供了 List 接口的骨干实现,从而最大限度地减少了实现受“连续访问”数据存储(如链接列表)支持的此接口所需的工作。对于随机访问数据(如数组),应该优先使用 AbstractList,而不是先使用此类。


AbstractSet 
extends AbstractCollection<E>
implements Set<E>
此类提供 Set 接口的骨干实现,从而最大限度地减少了实现此接口所需的工作。


ArrayDeque 
extends AbstractCollection<E>
implements Deque<E>, Cloneable, Serializable
Deque 接口的大小可变数组的实现。数组双端队列没有容量限制;它们可根据需要增加以支持使用。它们不是线程安全的;在没有外部同步时,它们不支持多个线程的并发访问。


ArrayList 
extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, Serializable
List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的。)


Arrays 
extends Object
此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。


BitSet 
extends Object
implements Cloneable, Serializable
此类实现了一个按需增长的位向量。位 set 的每个组件都有一个 boolean 值。用非负的整数将 BitSet 的位编入索引。可以对每个编入索引的位进行测试、设置或者清除。通过逻辑与、逻辑或和逻辑异或操作,可以使用一个 BitSet 修改另一个 BitSet 的内容。


默认情况下,set 中所有位的初始值都是 false。


Calendar
extends Object
implements Serializable, Cloneable, Comparable<Calendar>
Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。 


Collections 
extends Object
此类完全由在 collection 上进行操作或返回 collection 的静态方法组成。它包含在 collection 上操作的多态算法,即“包装器”,包装器返回由指定 collection 支持的新 collection,以及少数其他内容。


Currency 
extends Object
implements Serializable
表示货币。


Date 
extends Object
implements Serializable, Cloneable, Comparable<Date>
类 Date 表示特定的瞬间,精确到毫秒。


Dictionary 
extends Object
Dictionary 类是任何可将键映射到相应值的类(如 Hashtable)的抽象父类。


EnumMap 
extends AbstractMap<K,V>
implements Serializable, Cloneable
与枚举类型键一起使用的专用 Map 实现。枚举映射中所有键都必须来自单个枚举类型,该枚举类型在创建映射时显式或隐式地指定。枚举映射在内部表示为数组。此表示形式非常紧凑且高效。


EnumSet 
extends AbstractSet<E>
implements Cloneable, Serializable
与枚举类型一起使用的专用 Set 实现。


EventListenerProxy 
extends Object
implements EventListener
将一组附加参数与侦听器关联的 EventListener 类的抽象包装器类。


EventObject 
extends Object
implements Serializable
所有事件状态对象都将从其派生的根类。
所有 Event 在构造时都引用了对象 "source",在逻辑上认为该对象是最初发生有关 Event 的对象。


FormattableFlags 
extends Object
将 FomattableFlags 传递给 Formattable.formatTo() 方法,并修改 Formattables 的输出格式。Formattable 的实现负责解释和验证所有标志。


Formatter 
extends Object
implements Closeable, Flushable
printf 风格的格式字符串的解释程序。此类提供了对布局对齐和排列的支持,以及对数值、字符串和日期/时间数据的常规格式和特定于语言环境的输出的支持。支持诸如 byte、BigDecimal 和 Calendar 等常见 Java 类型。任意用户类型的受限格式化定制都是通过 Formattable 接口提供的。


GregorianCalendar
extends Calendar
GregorianCalendar 是 Calendar 的一个具体子类,提供了世界上大多数国家/地区使用的标准日历系统。 


HashMap 
extends AbstractMap<K,V>
implements Map<K,V>, Cloneable, Serializable
基于哈希表的 Map 接口的实现。


HashSet 
extends AbstractSet<E>
implements Set<E>, Cloneable, Serializable
此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。


Hashtable 
extends Dictionary<K,V>
implements Map<K,V>, Cloneable, Serializable
此类实现一个哈希表,该哈希表将键映射到相应的值。任何非 null 对象都可以用作键或值。
不像新的 collection 实现,Hashtable 是同步的


IdentityHashMap 
extends AbstractMap<K,V>
implements Map<K,V>, Serializable, Cloneable
此类利用哈希表实现 Map 接口,比较键(和值)时使用引用相等性代替对象相等性。换句话说,在 IdentityHashMap 中,当且仅当 (k1==k2) 时,才认为两个键 k1 和 k2 相等(在正常 Map 实现(如 HashMap)中,当且仅当满足下列条件时才认为两个键 k1 和 k2 相等:(k1==null ? k2==null : e1.equals(e2)))。


LinkedHashMap 
extends HashMap<K,V>
implements Map<K,V>
Map 接口的哈希表和链接列表实现,具有可预知的迭代顺序。


LinkedHashSet 
extends HashSet<E>
implements Set<E>, Cloneable, Serializable
具有可预知迭代顺序的 Set 接口的哈希表和链接列表实现。此实现与 HashSet 的不同之外在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,即按照将元素插入到 set 中的顺序(插入顺序)进行迭代。注意,插入顺序不 受在 set 中重新插入的 元素的影响。(如果在 s.contains(e) 返回 true 后立即调用 s.add(e),则元素 e 会被重新插入到 set s 中。)


LinkedList 
extends AbstractSequentialList<E>
implements List<E>, Deque<E>, Cloneable, Serializable
List 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列。


ListResourceBundle 
extends ResourceBundle
ListResourceBundle 是 ResourceBundle 的一个抽象类,用于管理方便而又易于使用的列表中的语言环境资源。有关资源包的常规信息,请参阅 ResourceBundle。


Locale 
extends Object
implements Cloneable, Serializable
Locale 对象表示了特定的地理、政治和文化地区。需要 Locale 来执行其任务的操作称为语言环境敏感的 操作,它使用 Locale 为用户量身定制信息。例如,显示一个数值就是语言环境敏感的操作,应该根据用户的国家、地区或文化的风俗/传统来格式化该数值。


Observable 
extends Object
此类表示模型视图范例中的 observable 对象,或者说“数据”。可将其子类化,表示应用程序想要观察的对象。
一个 observable 对象可以有一个或多个观察者。观察者可以是实现了 Observer 接口的任意对象。一个 observable 实例改变后,调用 Observable 的 notifyObservers 方法的应用程序会通过调用观察者的 update 方法来通知观察者该实例发生了改变。


PriorityQueue 
extends AbstractQueue<E>
implements Serializable
一个基于优先级堆的无界优先级队列。优先级队列的元素按照其自然顺序进行排序,或者根据构造队列时提供的 Comparator 进行排序,具体取决于所使用的构造方法。优先级队列不允许使用 null 元素。依靠自然顺序的优先级队列还不允许插入不可比较的对象(这样做可能导致 ClassCastException)。


Properties 
extends Hashtable<Object,Object>
Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。
一个属性列表可包含另一个属性列表作为它的“默认值”;如果未能在原有的属性列表中搜索到属性键,则搜索第二个属性列表。


PropertyPermission 
extends BasicPermission
此类用于属性权限。




PropertyResourceBundle 
extends ResourceBundle
PropertyResourceBundle 是 ResourceBundle 的一个具体子类,它使用属性文件中的静态字符串集来管理语言环境资源。有关资源包的更多信息,请参阅 ResourceBundle。


Random 
extends Object
implements Serializable
此类的实例用于生成伪随机数流。此类使用 48 位的种子,使用线性同余公式 (linear congruential form) 对其进行了修改(请参阅 Donald Knuth 的The Art of Computer Programming, Volume 3,第 3.2.1 节)。
很多应用程序会发现 Math.random() 方法更易于使用。


ResourceBundle 
extends Object
资源包包含特定于语言环境的对象。当程序需要一个特定于语言环境的资源时(如 String),程序可以从适合当前用户语言环境的资源包中加载它。使用这种方式,可以编写很大程度上独立于用户语言环境的程序代码,它将资源包中大部分(即便不是全部)特定于语言环境的信息隔离开来。


ResourceBundle.Control 
extends Object
ResourceBundle.Control 定义一个回调方法集,它在包加载进程中由 ResourceBundle.getBundle 工厂方法调用。换句话说,ResourceBundle.Control 与工厂方法协作可用于加载资源包。回调方法的默认实现为工厂方法提供执行默认行为的必要信息。


Scanner 
extends Object
implements Iterator<String>
一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。


ServiceLoader 
extends Object
implements Iterable<S>
一个简单的服务提供者加载设施。


SimpleTimeZone 
extends TimeZone
SimpleTimeZone 是 TimeZone 的具体子类,表示一个使用格里高利历的时区。此类保持一个相对 GMT 的偏移量,称为原始偏移量,并保持夏令时安排的开始和结束规则。由于它仅为每一项保持单个值,因此它无法处理相对 GMT 的偏移量以及夏令时安排中的历史更改,除了 setStartYear 方法可以指定开始实施夏令时安排的年份之外。


Stack 
extends Vector<E>
Stack 类表示后进先出(LIFO)的对象堆栈。它通过五个操作对类 Vector 进行了扩展 ,允许将向量视为堆栈。它提供了通常的 push 和 pop 操作,以及取堆栈顶点的 peek 方法、测试堆栈是否为空的 empty 方法、在堆栈中查找项并确定到堆栈顶距离的 search 方法。
首次创建堆栈时,它不包含项。
Deque 接口及其实现提供了 LIFO 堆栈操作的更完整和更一致的 set,应该优先使用此 set,而非此类。


StringTokenizer 
extends Object
implements Enumeration<Object>
string tokenizer 类允许应用程序将字符串分解为标记。tokenization 方法比 StreamTokenizer 类所使用的方法更简单。StringTokenizer 方法不区分标识符、数和带引号的字符串,它们也不识别并跳过注释。


Timer 
extends Object
一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。


TimerTask
extends Object
implements Runnable
由 Timer 安排为一次执行或重复执行的任务。 


TimeZone 
extends Object
implements Serializable, Cloneable
TimeZone 表示时区偏移量,也可以计算夏令时。


TreeMap 
extends AbstractMap<K,V>
implements NavigableMap<K,V>, Cloneable, Serializable
基于红黑树(Red-Black tree)的 NavigableMap 实现。该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator 进行排序,具体取决于使用的构造方法。


TreeSet 
extends AbstractSet<E>
implements NavigableSet<E>, Cloneable, Serializable
基于 TreeMap 的 NavigableSet 实现。使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator 进行排序,具体取决于使用的构造方法。


UUID 
extends Object
implements Serializable, Comparable<UUID>
表示通用唯一标识符 (UUID) 的类。 UUID 表示一个 128 位的值。


Vector 
extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, Serializable
Vector 类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector 的大小可以根据需要增大或缩小,以适应创建 Vector 后进行添加或移除项的操作。
与新 collection 实现不同,Vector 是同步的。


WeakHashMap
extends AbstractMap<K,V>
implements Map<K,V>
以弱键 实现的基于哈希表的 Map。在 WeakHashMap 中,当某个键不再正常使用时,将自动移除其条目。更精确地说,对于一个给定的键,其映射的存在并不阻止垃圾回收器对该键的丢弃,这就使该键成为可终止的,被终止,然后被回收。丢弃某个键时,其条目从映射中有效地移除,因此,该类的行为与其他的 Map 实现有所不同。


枚举  
Formatter.BigDecimalLayoutForm


二:java.util.concurrent
在并发编程中很常用的实用工具类。


接口  
BlockingDeque<E> 支持两个附加操作的 Queue,这两个操作是:获取元素时等待双端队列变为非空;存储元素时等待双端队列中的空间变得可用。
BlockingQueue<E> 支持两个附加操作的 Queue,这两个操作是:获取元素时等待队列变为非空,以及存储元素时等待空间变得可用。
Callable<V> 返回结果并且可能抛出异常的任务。
CompletionService<V> 将生产新的异步任务与使用已完成任务的结果分离开来的服务。
ConcurrentMap<K,V> 提供其他原子 putIfAbsent、remove、replace 方法的 Map。
ConcurrentNavigableMap<K,V> 支持 NavigableMap 操作,且以递归方式支持其可导航子映射的 ConcurrentMap。
Delayed 一种混合风格的接口,用来标记那些应该在给定延迟时间之后执行的对象。
Executor 执行已提交的 Runnable 任务的对象。
ExecutorService Executor 提供了管理终止的方法,以及可为跟踪一个或多个异步任务执行状况而生成 Future 的方法。
Future<V> Future 表示异步计算的结果。
RejectedExecutionHandler 无法由 ThreadPoolExecutor 执行的任务的处理程序。
RunnableFuture<V> 作为 Runnable 的 Future。
RunnableScheduledFuture<V> 作为 Runnable 的 ScheduledFuture。
ScheduledExecutorService 一个 ExecutorService,可安排在给定的延迟后运行或定期执行的命令。
ScheduledFuture<V> 一个延迟的、结果可接受的操作,可将其取消。
ThreadFactory 根据需要创建新线程的对象。


类  
AbstractExecutorService 提供 ExecutorService 执行方法的默认实现。
ArrayBlockingQueue<E> 一个由数组支持的有界阻塞队列。
ConcurrentHashMap<K,V> 支持获取的完全并发和更新的所期望可调整并发的哈希表。
ConcurrentLinkedQueue<E> 一个基于链接节点的无界线程安全队列。
ConcurrentSkipListMap<K,V> 可缩放的并发 ConcurrentNavigableMap 实现。
ConcurrentSkipListSet<E> 一个基于 ConcurrentSkipListMap 的可缩放并发 NavigableSet 实现。
CopyOnWriteArrayList<E> ArrayList 的一个线程安全的变体,其中所有可变操作(add、set 等等)都是通过对底层数组进行一次新的复制来实现的。
CopyOnWriteArraySet<E> 对其所有操作使用内部 CopyOnWriteArrayList 的 Set。
CountDownLatch 一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。
CyclicBarrier 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。
DelayQueue<E extends Delayed> Delayed 元素的一个无界阻塞队列,只有在延迟期满时才能从中提取元素。
Exchanger<V> 可以在对中对元素进行配对和交换的线程的同步点。
ExecutorCompletionService<V> 使用提供的 Executor 来执行任务的 CompletionService。
Executors 此包中所定义的 Executor、ExecutorService、ScheduledExecutorService、ThreadFactory 和 Callable 类的工厂和实用方法。
FutureTask<V> 可取消的异步计算。
LinkedBlockingDeque<E> 一个基于已链接节点的、任选范围的阻塞双端队列。
LinkedBlockingQueue<E> 一个基于已链接节点的、范围任意的 blocking queue。
PriorityBlockingQueue<E> 一个无界阻塞队列,它使用与类 PriorityQueue 相同的顺序规则,并且提供了阻塞获取操作。
ScheduledThreadPoolExecutor ThreadPoolExecutor,它可另行安排在给定的延迟后运行命令,或者定期执行命令。
Semaphore 一个计数信号量。
SynchronousQueue<E> 一种阻塞队列,其中每个插入操作必须等待另一个线程的对应移除操作 ,反之亦然。
ThreadPoolExecutor 一个 ExecutorService,它使用可能的几个池线程之一执行每个提交的任务,通常使用 Executors 工厂方法配置。
ThreadPoolExecutor.AbortPolicy 用于被拒绝任务的处理程序,它将抛出 RejectedExecutionException.
ThreadPoolExecutor.CallerRunsPolicy 用于被拒绝任务的处理程序,它直接在 execute 方法的调用线程中运行被拒绝的任务;如果执行程序已关闭,则会丢弃该任务。
ThreadPoolExecutor.DiscardOldestPolicy 用于被拒绝任务的处理程序,它放弃最旧的未处理请求,然后重试 execute;如果执行程序已关闭,则会丢弃该任务。
ThreadPoolExecutor.DiscardPolicy 用于被拒绝任务的处理程序,默认情况下它将丢弃被拒绝的任务。
枚举  
TimeUnit TimeUnit 表示给定单元粒度的时间段,它提供在这些单元中进行跨单元转换和执行计时及延迟操作的实用工具方法。


三:java.util.concurrent.atomic 
类的小工具包,支持在单个变量上解除锁的线程安全编程。
AtomicBoolean 可以用原子方式更新的 boolean 值。
AtomicInteger 可以用原子方式更新的 int 值。
AtomicIntegerArray 可以用原子方式更新其元素的 int 数组。
AtomicIntegerFieldUpdater<T> 基于反射的实用工具,可以对指定类的指定 volatile int 字段进行原子更新。
AtomicLong 可以用原子方式更新的 long 值。
AtomicLongArray 可以用原子方式更新其元素的 long 数组。
AtomicLongFieldUpdater<T> 基于反射的实用工具,可以对指定类的指定 volatile long 字段进行原子更新。
AtomicMarkableReference<V> AtomicMarkableReference 维护带有标记位的对象引用,可以原子方式对其进行更新。
AtomicReference<V> 可以用原子方式更新的对象引用。
AtomicReferenceArray<E> 可以用原子方式更新其元素的对象引用数组。
AtomicReferenceFieldUpdater<T,V> 基于反射的实用工具,可以对指定类的指定 volatile 字段进行原子更新。
AtomicStampedReference<V> AtomicStampedReference 维护带有整数“标志”的对象引用,可以用原子方式对其进行更新。


四:java.util.concurrent.locks 
为锁和等待条件提供一个框架的接口和类,它不同于内置同步和监视器。
接口:
Condition Condition 将 Object 监视器方法(wait、notify 和 notifyAll)分解成截然不同的对象,以便通过将这些对象与任意 Lock 实现组合使用,为每个对象提供多个等待 set(wait-set)。
Lock Lock 实现提供了比使用 synchronized 方法和语句可获得的更广泛的锁定操作。
ReadWriteLock ReadWriteLock 维护了一对相关的锁,一个用于只读操作,另一个用于写入操作。
类:
AbstractOwnableSynchronizer 可以由线程以独占方式拥有的同步器。
AbstractQueuedLongSynchronizer 以 long 形式维护同步状态的一个 AbstractQueuedSynchronizer 版本。
AbstractQueuedSynchronizer 为实现依赖于先进先出 (FIFO) 等待队列的阻塞锁和相关同步器(信号量、事件,等等)提供一个框架。
LockSupport 用来创建锁和其他同步类的基本线程阻塞原语。
ReentrantLock 一个可重入的互斥锁 Lock,它具有与使用 synchronized 方法和语句所访问的隐式监视器锁相同的一些基本行为和语义,但功能更强大。
ReentrantReadWriteLock 支持与 ReentrantLock 类似语义的 ReadWriteLock 实现。
ReentrantReadWriteLock.ReadLock ReentrantReadWriteLock.readLock() 方法返回的锁。
ReentrantReadWriteLock.WriteLock ReentrantReadWriteLock.writeLock() 方法返回的锁。




五:java.util.jar 
接口摘要
Pack200.Packer 打包器引擎把各种转换应用到输入 JAR 文件,从而可以通过压缩器(如 gzip 或 zip)高度压缩打包流。
Pack200.Unpacker 解包器引擎将打包的流转换为 JAR 文件。
类摘要
Attributes Attributes 类将 Manifest 属性名称映射到关联的字符串值。
Attributes.Name Attributes.Name 类表示存储在此 Map 中的一个属性名称。
JarEntry 此类用于表示 JAR 文件条目。
JarFile JarFile 类用于从任何可以使用 java.io.RandomAccessFile 打开的文件中读取 jar 文件的内容。
JarInputStream JarInputStream 类用于从任何输入流读取 JAR 文件内容。
JarOutputStream JarOutputStream 类用于向任何输出流写入 JAR 文件内容。
Manifest Manifest 类用于维护 Manifest 条目名称及其相关的 Attributes。
Pack200 以 Pack200 格式在 JAR 文件和打包的流之间进行转换。


六:java.util.logging 
接口摘要
Filter Filter 可用于为记录内容提供比记录级别所提供的更细粒度的控制。
LoggingMXBean 日志记录设施的管理接口。
类摘要
ConsoleHandler 此 Handler 向 System.err 发布日志记录。
ErrorManager 可将 ErrorManager 对象附加到 Handler,以便处理日志记录过程中 Handler 上所发生的错误。
FileHandler 简单的文件日志记录 Handler。
Formatter Formatter 为格式化 LogRecords 提供支持。
Handler Handler 对象从 Logger 中获取日志信息,并将这些信息导出。
Level Level 类定义了一组可用来控制日志输出的标准日志级别。
Logger Logger 对象用来记录特定系统或应用程序组件的日志消息。
LoggingPermission 当 SecurityManager 运行的代码调用某个日志记录控制方法(如 Logger.setLevel)时,SecurityManager 将要检查的权限。
LogManager 存在一个单一的全局 LogManager 对象,它可用于维护 Logger 和日志服务的一组共享状态。
LogRecord LogRecord 对象用于在日志框架和单个日志 Handler 之间传递日志请求。
MemoryHandler Handler 在内存中的循环缓冲区中对请求进行缓冲处理。
SimpleFormatter 以可读格式输出 LogRecord 的简单摘要。
SocketHandler 简单的网络日志 Handler。
StreamHandler 基于流的日志 Handler。
XMLFormatter 将 LogRecord 格式化为标准 XML 格式。


七:java.util.prefs 
此包允许应用程序存储并获取用户和系统首选项和配置数据。


接口摘要
NodeChangeListener 用于接收首选项节点更改事件的侦听器。
PreferenceChangeListener 用于接收首选项节点更改事件的侦听器。
PreferencesFactory 生成 Preferences 对象的 factory 对象。
 
类摘要
AbstractPreferences 此类提供了 Preferences 类的骨干实现,从而大大简化了实现此类的任务。
NodeChangeEvent Preferences 节点发出的事件,用于指示已添加或移除该节点的子节点。
PreferenceChangeEvent Preferences 节点发出的事件,用于指示已经添加或移除首选项,或者首选项的值已被更改。
Preferences 首选项数据的层次结构 collection 中的节点。




八:java.util.regex 
用于匹配字符序列与正则表达式指定模式的类。


接口  


MatchResult
匹配操作的结果。
此接口包含用于确定与正则表达式匹配结果的查询方法。通过 MatchResult 可以查看匹配边界、组和组边界,但是不能修改。


类  


Matcher 
extends Object
implements MatchResult
通过解释 Pattern 对 character sequence 执行匹配操作的引擎。


Pattern
extends Object
implements Serializable
正则表达式的编译表示形式。
指定为字符串的正则表达式必须首先被编译为此类的实例。然后,可将得到的模式用于创建 Matcher 对象,依照正则表达式,该对象可以与任意字符序列匹配。执行匹配所涉及的所有状态都驻留在匹配器中,所以多个匹配器可以共享同一模式。




九:java.util.spi 
java.util 包中类的服务提供者类


CurrencyNameProvider
extends LocaleServiceProvider
为 Currency 类提供本地化货币符号的服务提供者的抽象类。注意,在确定 LocaleServiceProvider 规范中描述的行为时,货币符号被视为名称。 


LocaleNameProvider 
extends LocaleServiceProvider
为 Locale 类提供本地化名称的服务提供者的一个抽象类。


LocaleServiceProvider
extends Object
此类是所有与语言环境有关的服务提供者接口(SPI)的超类。
与语言环境有关的服务提供者接口是与 java.text 和 java.util 包中与语言环境有关的类相对应的接口。利用这些接口,可以构造与语言环境有关的对象,可以获取这些包的本地名称。对于 Java 运行时环境本身支持的语言环境集以外的语言环境,java.text 和 java.util 包中与语言环境有关的工厂方法以及获取名称的方法使用提供者接口的实现来提供支持。 


TimeZoneNameProvider
extends LocaleServiceProvider
为 TimeZone 类提供本地化时区名称的服务提供者的抽象类。从此类的实现获得的本地化时区名称也是 DateFormatSymbols.getZoneStrings() 方法的源。


十:java.util.zip 
提供用于读写标准 ZIP 和 GZIP 文件格式的类。


接口摘要
Checksum 表示数据校验和的接口。
 
类摘要
Adler32 可用于计算数据流的 Adler-32 校验和的类。
CheckedInputStream 需要维护所读取数据校验和的输入流。
CheckedOutputStream 需要维护写入数据校验和的输出流。
CRC32 可用于计算数据流的 CRC-32 的类。
Deflater 此类使用流行的 ZLIB 压缩程序库为通用压缩提供支持。
DeflaterInputStream 为使用 "deflate" 压缩格式压缩数据实现输入流过滤器。
DeflaterOutputStream 此类为使用 "deflate" 压缩格式压缩数据实现输出流过滤器。
GZIPInputStream 此类为读取 GZIP 文件格式的压缩数据实现流过滤器。
GZIPOutputStream 此类为使用 GZIP 文件格式写入压缩数据实现流过滤器。
Inflater 此类使用流行的 ZLIB 压缩程序库为通用解压缩提供支持。
InflaterInputStream 此类为解压缩 "deflate" 压缩格式的数据实现流过滤器。
InflaterOutputStream 为解压缩 "deflate" 压缩格式存储的数据实现输出流过滤器。
ZipEntry 此类用于表示 ZIP 文件条目。
ZipFile 此类用于从 ZIP 文件读取条目。
ZipInputStream 此类为读取 ZIP 文件格式的文件实现输入流过滤器。
ZipOutputStream 此类为以 ZIP 文件格式写入文件实现输出流过滤器。
0 0
原创粉丝点击