君子博学而日参省乎己 则知明而行无过矣

博客园 首页 新随笔 联系 订阅 管理

2013年5月23日 #

该文被密码保护。 阅读全文
posted @ 2013-05-23 23:13 刺猬的温驯 阅读(20) 评论(0) 推荐(0) 编辑

摘要: 简介:在本篇技巧文章中,作者兼开发人员 Nicholas Chase 向您演示如何使用用于 XML 消息传递的 Java API(Java API for XML Messaging (JAXM))简化创建和发送 SOAP 消息的过程。Web 服务的基础在于以标准格式发送和接收消息以便使所有系统都能理解。通常,那种格式是简单对象访问协议(Simple Object Access Protocol (SOAP))。SOAP 消息可以手工生成和发送,但是用于 XML 消息传递的 Java API(JAXM)使许多必需步骤(如创建连接或创建并发送实际消息)自动化。这篇技巧文章记录了一个同步 SOAP 阅读全文
posted @ 2013-05-23 03:19 刺猬的温驯 阅读(3372) 评论(1) 推荐(1) 编辑

摘要: 引言 Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指令建立,但是它们不需要程序代码来显式地释放。一般来说,堆的是由垃圾回收 来负责的,尽管JVM规范并不要求特殊的垃圾回收技术,甚至根本就不需要垃圾回收,但是由于内存的有限性,JVM在实现的时候都有一个由垃圾回收所管理的堆。垃圾回收是一种动态存储管理技术,它自动地释放不再被程序引用的对象,按照特定的垃圾收集算法来实现资源自动回收的功能。 垃圾收集的意义 在C++中,... 阅读全文
posted @ 2013-05-23 02:08 刺猬的温驯 阅读(160) 评论(0) 推荐(0) 编辑

摘要: 1. ArrayList概述: ArrayList是List接口的可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。 每个ArrayList实例都有一个容量,该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向ArrayList中不断添加元素,其容量也自动增长。自动增长会带来数据向新数组的重新拷贝,因此,如果可预知数据量的多少,可在构造ArrayList时指定其容量。在添加大量元素前,应用程序也可以使用ensureCapacity操作来增加ArrayList实例的容 阅读全文
posted @ 2013-05-23 01:54 刺猬的温驯 阅读(115) 评论(0) 推荐(0) 编辑

摘要: 1. LinkedHashMap概述: LinkedHashMap是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 LinkedHashMap实现与HashMap的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可以是插入顺序或者是访问顺序。 注意,此实现不是同步的。如果多个线程同时访问链接的哈希映射,而其中至少一个线程从结构上修改了该映射,则它必须保持外部同步。2. LinkedHashMap的实现: 对于LinkedHa 阅读全文
posted @ 2013-05-23 01:53 刺猬的温驯 阅读(143) 评论(0) 推荐(0) 编辑

摘要: 1. LinkedHashSet概述:LinkedHashSet是具有可预知迭代顺序的Set接口的哈希表和链接列表实现。此实现与HashSet的不同之处在于,后者维护着一个运行于所有条目的双重链接列表。此链接列表定义了迭代顺序,该迭代顺序可为插入顺序或是访问顺序。注意,此实现不是同步的。如果多个线程同时访问链接的哈希Set,而其中至少一个线程修改了该Set,则它必须保持外部同步。2. LinkedHashSet的实现:对于LinkedHashSet而言,它继承与HashSet、又基于LinkedHashMap来实现的。LinkedHashSet底层使用LinkedHashMap来保存所有元素, 阅读全文
posted @ 2013-05-23 01:52 刺猬的温驯 阅读(150) 评论(0) 推荐(0) 编辑

摘要: 1. HashSet概述:HashSet实现Set接口,由哈希表(实际上是一个HashMap实例)支持。它不保证set的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用null元素。2. HashSet的实现:对于HashSet而言,它是基于HashMap实现的,HashSet底层使用HashMap来保存所有元素,因此HashSet的实现比较简单,相关HashSet的操作,基本上都是直接调用底层HashMap的相关方法来完成,HashSet的源代码如下:Java代码publicclassHashSet<E>extendsAbstractSet<E>implement 阅读全文
posted @ 2013-05-23 01:51 刺猬的温驯 阅读(163) 评论(0) 推荐(0) 编辑

摘要: 1. HashMap概述:HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。2. HashMap的数据结构:在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。 从上图中可以看出,HashMap底层就是一个数组结构,数组中的每一项又是一个链表。当新建一个HashMap的时候,就会初始化一个数组。 源码如下: 阅读全文
posted @ 2013-05-23 01:49 刺猬的温驯 阅读(121) 评论(0) 推荐(0) 编辑

摘要: 数据类型是计算机语言里针对内存的一种抽象表达方式,也是语言的抽象原子概念,即语言中最基本的定义单元。在Java语言中,数据类型分为基本类型和对象类型。1.基本类型: Java中的基本类型有九种,并且都有其对应的包装类。其中void类型及其包装类java.lang.Void,我们无法直接操作。其余八种基本类型,从类型上又可分为:布尔型、字符型和数值型;其中数值型又可分为整数和实数。如下表:分类基本类型大小最小值最大值包装器类型默认值布尔boolean---Booleanfalse字符char16-bitUnicode0Unicode216-1Characteru0000数值整数byte8bits 阅读全文
posted @ 2013-05-23 01:48 刺猬的温驯 阅读(180) 评论(0) 推荐(0) 编辑

摘要: Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不 同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。HASH主要用于信息安全领域中加密算法,它把一些不同长度的信息转化成杂乱的128位的编码,这些编码值叫做HASH值.也可以说,hash就是找到一种数据内容和数据存放地址之间的映射关系例如字符串hello的哈希算法char* v 阅读全文
posted @ 2013-05-23 01:44 刺猬的温驯 阅读(398) 评论(0) 推荐(0) 编辑