⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 12.说明.java

📁 这是一个用jsp+Oracle开发的联系人客户关系管理系统!
💻 JAVA
字号:
============================================================================================
||										 标志说明										  ||
============================================================================================

=>生成
->子类
(I)接口		interface
(A)抽象类	abstract
(E)实际类	entity


============================================================================================
||										 主要内容										  ||
============================================================================================

1. Pattern,Matcher 				匹配正则表达式
2. CrashJava.java  				查询存放地址
3. Vector		=>Enumeration 	向量		
4. Hashtable	=>Enumeration	散列表		
5. BitSet 						位集
6. Enumeration					枚举
7. Iterator						反复器
8. Stack						堆栈,一种Vector
9. Properties					读取ini文件
10.StreamTokenizer				文件流的分割器
11.StringTokenizer				字符串的分割器
12.ZIP							压缩文件的生成方法


============================================================================================
||										 继承关系										  ||
============================================================================================
	接口			接口					抽象类				实体类
	----------------------------------------------------------------------------------------
(1) Object->Dictionary->Hashtable->Properties

(2) Map(I)			=>Collection(I)
					->AbstractMap(A)							->TreeMap  在一个“红-黑”树的基础上实现。
																		   查看键或者“键-值”对时,它们会按固定的顺序排列
																		   最大的好处就是我们得到的是已排好序的结果

																->HashMap  基于一个散列表实现(用它代替Hashtable)。
																		   针对“键-值”对的插入和检索,这种形式具有最稳定的性能。
																->WeakHashMap
																->Hashtable [同 HashMap]
					->SortedMap(I)								->TreeMap  

(3) Collection(I)	=>Iterator(I)
					->AbstractCollection(A)	->AbstractList(A)
											->AbstractSet(A)
					->List(I)				->AbstractList(A)	->AbstractSequentialList(A)	->LinkedList 提供优化的顺序访问性能,
																										 效率地在列表中部进行插入和删除
																										 随机访问时,速度却相当慢,此时应换用ArrayList
																->Vector	删除和插入快	->Stack
																->ArrayList 删除和插入元素,速度稍慢[同 Vector,LinkedList]
					->Set(I)				->AbstractSet(A)	->HashSet   用于除非常小的以外的所有Set
																->TreeSet	由一个“红黑树”后推得到的顺序Set
											->SortedSet(I)		->TreeSet
					

(4) Iterator(I)		->ListIterator(I)	

(5) List(I)			=>ListIterator(I)

(6) utilities:Collection,Arrays 对数组直接操作的静态函数,提供了一个过载的sort()和binarySearch(),

(7) Comparable<->Comparator

============================================================================================
||										 测试    										  ||
============================================================================================
(1) 决定使用何种List:ArrayList 查询较优,LinkedList 修改较优
	-----------------------------------------------
	类型		获取		反复	插入	删除
	ArrayList	110			270		1920	4780
	LinkedList	1870		7580	170		110
(2) 决定使用何种Set: HashSet 较优
	-----------------------------------------------
	类型		测试大小	添加	包含	反复
	TreeSet		10			22.0	11.0    16.0
				100			22.5	13.2    12.1
				1000		31.1	18.7    11.8
	HashSet		10			5.0		6.0     27.0
				100			6.6		6.6     10.9
				1000		7.4		6.6     9.5
(3) 决定使用何种Map:Map的大小对于性能的影响是最大的,首要的选择应该是 HashMap
	------------------------------------------------
	类型		测试大小	置入	取出    反复
	Hashtable	100			7.7		7.7		16.5
				1000		8.0		8.0		14.4
				10			16.0	11.0	22.0
	TreeMap		100			25.8	15.4	13.2   创建速度比其他两种类型明显快得多
				1000		33.8	20.9	13.6
				10			11.0	6.0		33.0
	HashMap		100			8.2		7.7		13.7
				1000		8.0		7.8		11.9



				
============================================================================================
||										 备注    										  ||
============================================================================================

(1) 集合(Collection):一组单独的元素,通常应用了某种规则。在这里,
    一个List(列表)必须按特定的顺序容纳元素,
    而一个Set(集)不可包含任何重复的元素。
	相反,“包”(Bag)的概念未在新的集合库中实现,因为“列表”已提供了类似的功能。
(2) 映射(Map):一系列“键-值”对(这已在散列表身上得到了充分的体现)。从表面看,这似乎应该成为一个“键-值”对的“集合”,
    但假若试图按那种方式实现它,就会发现实现过程相当笨拙。这进一步证明了应该分离成单独的概念。另一方面,可以方便地查看Map的某个部分。
    只需创建一个集合,然后用它表示那一部分即可。这样一来,Map就可以返回自己键的一个Set、一个包含自己值的List或者包含自己“键-值”对的
    一个List。和数组相似,Map可方便扩充到多个“维”,毋需涉及任何新概念。只需简单地在一个Map里包含其他Map(后者又可以包含更多的Map,以此类推)。
(3) 虚线框代表“接口”,
    点线框代表“抽象”类,
	而实线框代表普通(实际)类。
	点线箭头表示一个特定的类准备实现一个接口(在抽象类的情况下,则是“部分”实现一个接口)。
	双线箭头表示一个类可生成箭头指向的那个类的对象。
(4) 接口:是最高的类,供其它类重载它定义的函数
    抽象类:比接口类低,一定定义了一些功能
	实际类:封装了方法的可使用类

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -