Java 之 I/O 系列 目录Java 之 I/O 系列 01 ——基础Java 之 I/O 系列 02 ——序列化(一)Java 之 I/O 系列 02 ——序列化(二)继续上篇的第二个问题如果一个类实现了Serializable接口,但是它的父类没有实现 ,这个类可不可以序列化?Object是...
分类:
编程语言 时间:
2014-07-16 23:17:57
阅读次数:
303
Hashtable简介
Hashtable同样是基于哈希表实现的,同样每个元素是一个key-value对,其内部也是通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。
Hashtable也是JDK1.0引入的类,是线程安全的,能用于多线程环境中。
Hashtable同样实现了Serializable接口,它支持序列化,实现了Cloneable接口,能被克隆。...
分类:
编程语言 时间:
2014-07-08 21:17:22
阅读次数:
227
HashMap简介
HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。
HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHashMap。
HashMap 实现了Serializable接口,因此它支持序列化,实现了Cloneable接口,能被克隆。...
分类:
编程语言 时间:
2014-07-06 10:29:26
阅读次数:
404
Vector简介
Vector也是基于数组实现的,是一个动态数组,其容量能自动增长。
LinkedList是JDK1.0引入了,它的很多实现方法都加入了同步语句,因此是线程安全的(其实也只是相对安全,有些时候还是要加入同步语句来保证线程的安全),可以用于多线程环境。
LinkedList没有丝线Serializable接口,因此它不支持序列化,实现了Cloneable接口,能被克隆,实现了RandomAccess接口,支持快速随机访问。
Vector源码剖析
Vector的...
分类:
编程语言 时间:
2014-07-02 07:42:51
阅读次数:
349
LinkedList简介
LinkedList是基于双向循环链表(从源码中可以很容易看出)实现的,除了可以当做链表来操作外,它还可以当做栈、队列来使用。
LinkedList同样是非线程安全的,只在单线程下适合使用。
LinkedList实现了Serializable接口,因此它支持序列化,能够通过序列化传输,实现了Cloneable接口,能被克隆。
LinkedList源码剖析
LinkedList的源码如下(加入了比较详细的注释):...
分类:
编程语言 时间:
2014-07-01 09:55:43
阅读次数:
283
ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。
ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurrent并发包下的CopyOnWriteArrayList类。
ArrayList实现了Serializable接口,因此它支持序列化,能够通过序列化传输,实现了R...
分类:
编程语言 时间:
2014-06-30 17:01:32
阅读次数:
240
Android中的android.os.Parcelable接口用于替代Java序列化Serializable接口,Fragment以及Activtity之间都需要传递数据,有时甚至包含结构非常复杂的对象,这就需要先将这个对象序列化成二进制流,然后再进行传递了。比如Fragment1向Fragment2传递数据,下面是Fragment1中创建F..
分类:
移动开发 时间:
2014-06-16 15:30:23
阅读次数:
283
复合主键的使用其实很简单,但是需要注意对象需要被拆分,主键自己需要一个类并且该类需要实现java.io.Serializable接口,其它的属性再重新生成新类,并且类的属性中要有主键类的对象,相应的只需要一个配置文件,在映射文件中使用指明主键,并指明主键的属性。...
分类:
系统相关 时间:
2014-06-07 16:31:42
阅读次数:
264
1、为什么要使用serialVersionUID
(1)对于实现了Serializable接口的类,可以将其序列化输出至磁盘文件中,同时会将其serialVersionUID输出到文件中。
(2)然后有需要使用时,再从磁盘将对象内容及serialVersionUID读入内容中的某个对象。
(3)将磁盘内容读入对象时,需要进行强制类型转换,如Person person = (Person)oi...
分类:
其他好文 时间:
2014-05-25 04:34:50
阅读次数:
200
我们在Intent传递传递对象,可以有三种方式,实现Serializable接口、实现Parcelable接口,使用json格式序列化与反序列化。
在此我们使用第二方式,现实Parcelable接口,实现Parcelable需要以下操作。
1.writeToParcel 方法:该方法将类的数据写入外部提供的Parcel中。
2.describeContents 方法:返回内容...
分类:
其他好文 时间:
2014-05-15 04:25:44
阅读次数:
245