![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 69
bh_xiaoxinba
这个作者很懒,什么都没留下…
展开
-
java集合框架系列---fail-fast机制
介绍fail-fast 机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。 例如:当某一个线程A通过iterator去遍历某集合的过程中,若该集合的内容被其他线程所改变了;那么线程A访问集合时,就会抛出ConcurrentModificationException异常,产生fail-fast事件。示例import原创 2016-09-14 09:57:11 · 379 阅读 · 0 评论 -
java集合框架系列
1、java集合框架的接口 2、java集合框架的类层次结构 3、java集合框架中的遗留类层次结构 整个层次图原创 2016-09-12 23:19:02 · 1140 阅读 · 0 评论 -
java集合框架系列---WeakHashMap
1、介绍WeakHashMap简介 WeakHashMap 继承于AbstractMap,实现了Map接口。 和HashMap一样,WeakHashMap 也是一个散列表,它存储的内容也是键值对(key-value)映射,而且键和值都可以是null。 不过WeakHashMap的键是“弱键”。在 WeakHashMap 中,当某个键不再正常使用时,会被从WeakHashMap中被自动移除。更精确原创 2016-09-14 20:55:36 · 207 阅读 · 0 评论 -
java集合框架系列---Map接口
HashMap 是基于“拉链法”实现的散列表。一般用于单线程程序中。 Hashtable 也是基于“拉链法”实现的散列表。它一般用于多线程程序中。 WeakHashMap 也是基于“拉链法”实现的散列表,它一般也用于单线程程序中。相比HashMap,WeakHashMap中的键是“弱键”,当“弱键”被GC回收时,它对应的键值对也会被从WeakHashMap中删除;而HashMap中的键是转载 2016-09-14 21:18:08 · 169 阅读 · 0 评论 -
java内存模型
1、内存模型的相关概念缓存一致性问题。 通常称这种被多个线程访问的变量为共享变量。也就是说,如果一个变量在多个CPU中都存在缓存(一般在多线程编程时才会出现),那么就可能存在缓存不一致的问题。为了解决缓存不一致性问题,通常来说有以下2种解决方法: 通过在总线加LOCK#锁的方式 通过缓存一致性协议 这2种方式都是硬件层面上提供的方式。 上面的方式1会有一个问题,由于在锁住总线期间,其他CPU无法原创 2016-09-18 20:21:12 · 246 阅读 · 0 评论 -
java集合框架系列---遗留下来的集合框架
java第一版遗留下来的集合框架(容器类): Vector Stack Hashtable Dictionary Properties1、Vector特点1、Vector类实现了一个动态数组; 2、可以往其中随意插入不同类的对象,即不需顾及类型也不需预先选定向量的容量; 4、Vector: 底层用数组实现List接口的另一个类 5、重量级,占据更多的系统开销 线程安全源码分析在这原创 2016-09-13 00:09:56 · 421 阅读 · 0 评论 -
Java transient关键字使用小记
Java transient关键字使用小记 1. transient的作用及使用方法 我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和转载 2016-11-08 00:49:51 · 238 阅读 · 0 评论 -
自动装箱和自动拆箱源码分析
基本类型Java的四类八种基本数据类型 自动装箱执行Integer i=2将int型值赋值给Integer类型,会进行自动装箱: 执行该赋值语句时会调用Integer类中valueOf方法进行自动装箱:public static Integer valueOf(int i) { assert IntegerCache.high >= 127; if (i >= I原创 2016-11-22 20:09:13 · 287 阅读 · 0 评论 -
软件密码学基础--对称加密
单钥; 无法保证密钥的传输和管理安全;(无法区别篡改和伪造);原创 2017-06-25 23:29:18 · 311 阅读 · 0 评论 -
软件密码学基础---非对称加密
1、基础密钥对:公钥和私钥; 特点:如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果用私钥对数据进行加密,那么只有用对应的公钥才能解密; 一般:公钥用来加密信息,私钥用来数字签名;2、通信过程分析第一: A和B通信; 首先,B利用非对称加密算法(比如RSA),生成一对密钥,包括公钥和私钥,该对密钥的特点:公钥加密的特点只能私钥解,私钥加密的数据只能公钥解; 其次,B将公钥传递给A,原创 2017-06-25 23:57:23 · 904 阅读 · 0 评论 -
java集合框架系列---ArrayList
ArrayList简介是一个动态数组。 与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添加、删除、修改、遍历等功能。 ArrayList 实现了Ran原创 2016-09-13 01:19:06 · 300 阅读 · 0 评论 -
java集合框架系列---LinkedList
1、介绍LinkedList简介LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。 LinkedList 实现 List 接口,能对它进行队列操作。 LinkedList 实现 Deque 接口,即能将LinkedList当作双端队列使用。 LinkedList 实现了Cloneable接口,即覆盖了函数clo原创 2016-09-14 09:11:00 · 432 阅读 · 0 评论 -
java集合框架系列---Map接口
1、概要Map框架 (01) Map 是映射接口,Map中存储的内容是键值对(key-value)。 (02) AbstractMap 是继承于Map的抽象类,它实现了Map中的大部分API。其它Map的实现类可以通过继承AbstractMap来减少重复编码。 (03) SortedMap 是继承于Map的接口。SortedMap中的内容是排序的键值对,排序的方法是通过比较器(Comparat转载 2016-09-14 10:16:56 · 190 阅读 · 0 评论 -
Java 集合框架系列---Collection
Java 集合框架系列—Collection 概要首先,我们对Collection进行说明。下面先看看Collection的一些框架类的关系图:Collection是一个接口,它主要的两个分支是:List 和 Set。List和Set都是接口,它们继承于Collection。List是有序的队列,List中可以有重复的元素;而Set是数学概念中的集合,Set中没有重复元素!List和Set都有它们各转载 2016-09-14 10:07:01 · 202 阅读 · 0 评论 -
java集合框架系列---TreeMap
1、介绍简介 TreeMap 是一个有序的key-value集合,它是通过红黑树实现的。 TreeMap 继承于AbstractMap,所以它是一个Map,即一个key-value集合。 TreeMap 实现了NavigableMap接口,意味着它支持一系列的导航方法。比如返回有序的key集合。 TreeMap 实现了Cloneable接口,意味着它能被克隆。 TreeMap 实现了java.io.原创 2016-09-14 11:11:39 · 522 阅读 · 0 评论 -
java集合框架系列---Set接口
(01) Set 是继承于Collection的接口。它是一个不允许有重复元素的集合。 (02) AbstractSet 是一个抽象类,它继承于AbstractCollection,AbstractCollection实现了Set中的绝大部分函数,为Set的实现类提供了便利。 (03) HastSet 和 TreeSet 是Set的两个实现类。 HashSet依赖于HashMa原创 2016-09-14 22:39:57 · 204 阅读 · 0 评论 -
java集合框架系列---HashSet
1、介绍HashSet 简介 HashSet 是一个没有重复元素的集合。 它是由HashMap实现的,不保证元素的顺序,而且HashSet允许使用 null 元素。 HashSet是非同步的。如果多个线程同时访问一个哈希 set,而其中至少一个线程修改了该 set,那么它必须 保持外部同步。这通常是通过对自然封装该 set 的对象执行同步操作来完成的。如果不存在这样的对象,则应该使用 Colle转载 2016-09-14 22:57:02 · 193 阅读 · 0 评论 -
java集合框架系列---TreeSet
1、介绍TreeSet简介 TreeSet 是一个有序的集合,它的作用是提供有序的Set集合。它继承于AbstractSet抽象类,实现了NavigableSet, Cloneable, java.io.Serializable接口。 TreeSet 继承于AbstractSet,所以它是一个Set集合,具有Set的属性和方法。 TreeSet 实现了NavigableSet接口,意味着它支持一转载 2016-09-14 23:01:30 · 245 阅读 · 0 评论 -
java集合框架系列---Iterator和Enumeration比较
Iterator和Enumeration区别通过“Iterator(迭代器)” 或 “Enumeration(枚举类)” 去遍历集合; Enumeration是一个接口,它的源码如下:package java.util;public interface Enumeration<E> { boolean hasMoreElements(); E nextElement(); }Itera转载 2016-09-14 23:12:45 · 214 阅读 · 0 评论 -
java集合框架系列---包装器
Arrays类1)排序 Arrays的静态方法sort() Arrays.sort(Int型数组) 按照int大小排序,默认升序 Arrays.sort(String型数组)按照元素的自然顺序进行升序排序; Arrays.sort(String数组, String.CASE_INSENSITIVE_ORDER)不区分大小写; Arrays.sort(数组,start,end)可以指定数组原创 2016-09-14 23:19:29 · 211 阅读 · 0 评论 -
java集合框架系列---LinkedHashMap
1、介绍 LinkedHashMap是HashMap的一个子类,它保留插入的顺序,如果需要输出的顺序和输入时的相同,那么就选用LinkedHashMap。 LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 LinkedHashMap实现与HashMa原创 2016-09-14 22:13:29 · 169 阅读 · 0 评论 -
java集合框架系列---HashMap
1、介绍HashMap简介HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。 HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。 HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为null。此外,HashMap中的映射不是有序的。HashMap 的实例有原创 2016-09-14 10:50:43 · 376 阅读 · 0 评论 -
java日志框架--logback
待续。。。原创 2017-07-28 23:46:36 · 219 阅读 · 0 评论