一个简单的单例示例 单例模式可能是大家经常接触和使用的一个设计模式,你可能会这么写 上面代码大家应该都知道,所谓的线程不安全的懒汉单例写法。在UnsafeLazyInitiallization类中,假设A线程执行代码1的同时,B线程执行代码2,此时,线程A可能看到instance引用的对象还没有初始 ...
分类:
编程语言 时间:
2016-10-01 19:44:52
阅读次数:
242
1、hashTable是线程安全的、hashMap不是线程安全的 hashmap 线程不安全 允许有null的键和值 效率高一点、 方法不是Synchronize的要提供外同步 有containsvalue和containsKey方法 HashMap 是Java1.2 引进的Map interfac ...
分类:
其他好文 时间:
2016-09-26 16:26:15
阅读次数:
130
1.String是只读字符串,引用的字符串内容是无法改变的。 2.StringBuffer和StringBuilder的字符串对象可以直接进行修改。 3.StringBuilder没有被synchronized关键字修饰,线程不安全,效率高于StringBuffer,StringBuffer线程安全 ...
分类:
编程语言 时间:
2016-09-26 10:59:46
阅读次数:
169
StringBuffer和StringBuider的区别 StringBuffer是jdk1.0版本的,是线程安全的,效率低 StringBuilder是jdk1.5的,是线程不安全的,效率高 String和StringBuffer,StringBuilder的区别 String是一个不可变的字符序 ...
分类:
其他好文 时间:
2016-09-25 20:37:36
阅读次数:
98
HashSet:位于java.util包下 1 HashSet概述 特点:作为Set集合的一种,首先是无序的,不可重复的;允许存放null值;底层封装HashMap;实现是不同步的,线程不安全; 常用构造: public HashSet() :构造一个新的空 set,其底层 HashMap 实例的默 ...
分类:
编程语言 时间:
2016-09-25 20:22:48
阅读次数:
148
LinkedList:位于java.util包下 1 LinkedList概述 特点:底层数据结构是链表,增删快查询慢;实现非同步,线程不安全,效率高;有序(存取顺序一致);允许存储重复值;允许存储null值;易于实现堆栈、队列、双向队列结构; 常用构造: public LinkedList(): ...
分类:
编程语言 时间:
2016-09-25 17:30:54
阅读次数:
195
Java list与Python list相比较 Java List:有序的,可重复的。(有序指的是集合中对象的顺序与添加顺序相同) Python list(列表)是有序的,可变的。 Java List分类: ArrayList:底层使用数组,线程不安全,查找速度快,增删速度慢 在迭代过程中,对集合 ...
分类:
编程语言 时间:
2016-09-23 21:19:01
阅读次数:
178
List:(面试题List的子类特点) ArrayList: 底层数据结构是数组,查询快,增删慢。 线程不安全,效率高。 Vector: 底层数据结构是数组,查询快,增删慢。 线程安全,效率低。 LinkedList: 底层数据结构是链表,查询慢,增删快。 线程不安全,效率高。 List有三个儿子, ...
分类:
编程语言 时间:
2016-09-21 23:02:45
阅读次数:
131
Android UI 操作是线程不安全的。我们只能在UI线程或者说主线程中修改UI。试想多个Thread操作同一个UI,可能引起不一致。UI 线程的主要工作是:UI界面更新显示,各个控件的交互等等。一些耗时(time-consuming)操作不能放在UI线程中,典型的如:查询数据库,网络请求等等。这 ...
分类:
移动开发 时间:
2016-09-19 10:10:30
阅读次数:
191
此程序输出的结果为: 实例化Singleton实例化Singleton 说明此时实例化了两个Singleton,线程不安全! 2.在上面做一点改动 3.饿汉模式 4.饿汉模式 5.静态内部类 ...
分类:
其他好文 时间:
2016-09-18 19:34:12
阅读次数:
129