java中的Collection类是什么意思啊?

heguoxing 2005-03-10 04:09:53
java中的Collection类是什么意思啊?本人英语不是太好很不懂那里的说明!
请高手帮忙!
有没有中文版的java类库下载啊,谁有可否给我,我的邮箱是:hgx1322@yahoo.com.cn
...全文
1154 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhulei0429 2005-03-10
  • 打赏
  • 举报
回复
Collection是一个接口,Collections是类,简单说可以当个集合看
heguoxing 2005-03-10
  • 打赏
  • 举报
回复
谢谢啦!!
Ji秋风 2005-03-10
  • 打赏
  • 举报
回复
Mark
singinthesky 2005-03-10
  • 打赏
  • 举报
回复
Collection是一个接口,Collections是类
luke5678 2005-03-10
  • 打赏
  • 举报
回复
範例
collections 是一個「家常便飯」的主題,實在難以設計出令人興奮的範例。下面的範例程式用來讀取文字檔、剖析文字、計算出現頻率、排序、並將結果寫到另一個檔案。透過此範例,你應該 就能體會要如何使用 collection:

import java.io.*;
import java.util.*;

public class WordSort {
public static void main(String[] args) throws IOException {
// Get the command-line arguments.
if (args.length < 2) {
System.out.println("Usage: WordSort inputfile outputfile");
return;
}
String inputfile = args[0];
String outputfile = args[1];


// Create the word map. Each key is a word
// and each value is an Integer that represents
// the number of times the word occurs in the
// input file.
Map map = new HashMap();


// Read every line of the input file.
BufferedReader in = new BufferedReader(new FileReader(inputfile));
String line;
while ((line = in.readLine()) != null) {
// Examine each word on the line.
StringTokenizer st = new StringTokenizer(line);
while (st.hasMoreTokens()) {
String word = st.nextToken();
Object o = map.get(word);
// If there's no entry for this word, add one.
if (o == null) map.put(word, new Integer(1));
// Otherwise, increment the count for this word.
else {
Integer count = (Integer)o;
map.put(word, new Integer(count.intValue() + 1));
}
}
}
in.close();


// Get the map's keys and sort them.
List keys = new ArrayList(map.keySet());
Collections.sort(keys);

// Now write the results to the output file.
PrintWriter out = new PrintWriter(new FileWriter(outputfile));
Iterator iterator = keys.iterator();
while (iterator.hasNext()) {
Object key = iterator.next();
out.println(key + " : " + map.get(key));
}
out.close();
}
}

如果輸入檔 Ian Moore.txt 的內容如下:

Well it was my love that kept you going
Kept you strong enough to fall
And it was my heart you were breaking
When he hurt your pride
So how does it feel
How does it feel
How does it feel
How does it feel

你可以用下面的方式來執行:

java WordSort "Ian Moore.txt" count.txt

執行完後的結果存在 count.txt 檔中,內容如下:

And : 1
How : 3
Kept : 1
So : 1
Well : 1
When : 1
breaking : 1
does : 4
enough : 1
fall : 1
feel : 4
going : 1
he : 1
heart : 1
how : 1
hurt : 1
It : 6
kept : 1
love : 1
my : 2
pride : 1
strong : 1
that : 1
to : 1
was : 2
were : 1
you : 3
your : 1



public void printElements(Collection c, PrintStream out) {

Iterator iterator = c.iterator();

while (iterator.hasNext())

out.println(iterator.next());

}

本程式將大小寫視為不同,所以「How」和「how」被視為不同的字。你可以修改這點,在 StringTokenizer 處理完後將其轉成小寫即可:

String word = st.nextToken().toLowerCase();

更進一步的資料
現在你大概已經瞭解 Collections Framework ,也知道其資料結構和用法。如果你想取得更多細節,請造訪下面的網頁:

http://java.sun.com/docs/books/tutorial/collections/index.html

Sun 的教學資料相當豐富,如果你想更進一步瞭解 Collections Framework ,建議讀者來此看看。

http://www.javaworld.com/javaworld/jw-01-1999/jw-01-jglvscoll.html

這篇 JavaWorld 的文章是由 Laurence Vanhelsuwe 所寫,它詳細地比較了 Collections Framework 和 JGL 的異同( JGL 是一套由 ObjectSpace 公司所設計的 collection 程式庫)。雖然文章的結論中也認為比較此二程式庫猶如比較蘋果和橘子一般地不恰當,但本文章仍有一些不錯的見解。如果你已經熟悉了JGL,本文章對學習 Collections Framework 有幫助。
luke5678 2005-03-10
  • 打赏
  • 举报
回复
Map 介面
Collections Framework 也包含了 Map 的概念, Map 內的每個元素都有 key 和值兩部分。 Map 的基本使用方式很直覺(如果你記得 Hashtable 類別的話,你會覺得 Map 很類似):

public Object put(Object key, Object value)

加入一組 key 和值。如果此 map 中已經有一個相同的 key ,那麼對應的舊值會被取代。

public Object get(Object key)

取得特定 key 所對應的值。

public Object remove(Object key)

移除特定 key 所對應的值。

public int size()

取得元素個數。

你可以透過下面的兩種方式來取出所有的元素:

public Set keySet()

將 map 內所有的 key 集中在一個 Set 物件中,然後傳出此 set 。這裡選用 Set 當作傳出型態,是因為 key 不能重複。

public Collection values()

傳出 map 內所有值的集合。值是可以重複的。

SortedMap 是 Map 的子介面,SortedMap 將值依照 key 的次序來排列,它提供了 subMap()、headMap()、以及 tailMap() 來取出排列妥的 map 子集合。如同 SortedSet 一般,SortedMap 也提供了 comparator(),可以用來取得排序時比較用的物件,稍後有更詳說明。

實作的類別
在此之前,我談的都是介面,但介面是不能直接被實體化的。 Collections Framework 包含了一些有用的類別,它們實作了這些介面,如下表所列:

介面 實作
Set HashSet
SortedSet TreeSet
List ArrayList, LinkedList, Vector
Map HashMap, Hashtable
SortedMap TreeMap

如果你常常需要在 list 尾端加入元素的話,你應該用 ArrayList ,因為它的效率比較好(不過,如果你常常需要插入或刪除元素的話, LinkedList 的效率比較好)。Vector 依然和 JDK 1.0 時代的 Vector 一樣,只是多實作了 List 介面的 method。Vector 的 method 享有同步化(synchronize)所帶來的好處,多個執行緒 可以同時存取 Vector。舊的 Hashtable 也做了更新,新的 Hashtable 實作了 Map 介面,也享有同步化所帶來的好處。等一下你將會看到,想取得同步化的 collection ,有一些更一般化的方法。

Slam Dunking with Collections
java.util.Collections 類別有許多靜態的 method ,可以用在 Set 和 Map 上(請注意,別混淆了 java.util.Collections 類別和 java.util.Collection 介面)。因為 Collections 類別所提供的靜態 method 都是以介面為參數型態,所以只要實作了這些介面,任何類別都可以使用這些 method ,這麼一來,威力可真是不同凡響。我們能利用 Collections 類別的 method 來做些什麼呢?

你可以利用下面的 method ,來建立任何 collection 的同步化版本:

public static Collection synchronizedCollection(Collection c)

public static Set synchronizedSet(Set s)

public static List synchronizedList(List list)

public static Map synchronizedMap(Map m)

public static SortedSet synchronizedSortedSet(SortedSet s)

public static SortedMap synchronizedSortedMap(SortedMap m)

這些 method 用來建立支援同步化且可以使用多執行緒的 collection 。如果你會讓多個執行緒同時存取到 collection ,那麼你會發現這些 method 很好用。如果你想知道更進一步的資料,請自行參閱 Collections 的說明文件。

甚至,你還可以使用 Collections 類別來建立任何 collection 的唯讀版本:

public static Collection unmodifiableCollection(Collection c)

public static Set unmodifiableSet(Set s)

public static List unmodifiableList(List list)

public static Map unmodifiableMap(Map m)

public static SortedSet unmodifiableSortedSet(SortedSet s)

public static SortedMap unmodifiableSortedMap(SortedMap m)

建立唯讀的 collection 物件。

輕輕鬆鬆地排序
Collections 還包含其它的 method,用來進行一般的操作,像是排序。排序的 method 有兩個:

public static void sort(List list)

將傳進來的串列參數排序,此串列的元素必須實作 java.lang.Comparable 介面才行。還好,許多類別都有實作 Comparable,這些類別包括 String、Date、BigInteger、以及 基本型態的包裝類別(Integer、Double 等等)。

public static void sort(List list, Comparator c)

用來排序元素沒實作 Comparable 的 List,第二個參數用來擔任比較大小的工作。比方說,你可能寫一個 ImaginaryNumber 類別,然後你希望此類別的 List 也能排序。你可以設計一個實作 Comparator 介面的類別,讓此類別來比較 ImaginaryNumber。

Collections 還有一些其它的功能,如果你感興趣的話,請自行查詢 min()、max()、binarySearch()、和 reverse() 的用法。
luke5678 2005-03-10
  • 打赏
  • 举报
回复
對程式設計來說,collection 是一個很基本的觀念。程式中常常會需要追蹤許多相關的物件(比方說:一群員工或一堆影像)。最基本支援這個概念的當然是陣列,但是 陣列在許多方面卻很棘手,特別是對於會在執行過程中變動個數的 collection 來說,陣列就相當不適合。早在 JDK 1.0 的時代,就已經提供兩個好用的類別來存放 collection ,分別是 java.util.Vector (動態的陣列)和 java.util.Hashtable ( key 和值的組合)。

在這方面, Java 2 提供了更完全的方法,稱之為 Collections Framework。Java 2 中一樣有 Vector 和 Hashtable ,但他們已經被納入 Collections Framework 中。在本月的專欄中,我會介紹 Collections Framework ,並告訴你它能做些什麼。

Collections Framework 的架構
java.util package 中的介面( interface )是 Collections Framework 的根基所在。這些介面被分成兩大類:第一類繼承自 Collection 介面。 Collection (及其繼承者)用來當作許多其它物件的容器;第二類繼承自 Map 介面,可以透過 key 來索引到 collection 內的值。

Collection 介面
所有的 collection 都繼承自 Collection 介面。 Collection 就像是一個盒子,可以容納許多其它物件,這些內容物件是否可以重複,或是否有次序,都未在 Collection 中明確定義,而由其子介面定義。不過, Collection 介面倒是定義了一些基本操作:

public boolean add ( Object o )

將物件加入此 collection 中。如果成功,傳出值是 true 。如果物件已經存在而且此 collection 型態不允許物件重複加入,那麼就傳回 false 。如果此 collection 型態是唯讀的,呼叫此 method 將會導致 UnsupportedOperationException 例外。

public boolean remove ( Object o )

移除物件。如果成功,傳出值是 true 。如果物件不存在此集合中,則傳出 false 。如果此 collection 型態是唯讀的,呼叫此 method 將會導致 UnsupportedOperationException 例外。

public boolean contains ( Object o )

如果此物件存在此集合中,則傳出 true 。

public int size()

取得 collection 內的元素個數。

public boolean isEmpty()

如果 collection 是空的,傳出值是 true 。

public Iterator iterator()

此 method 傳出一個 Iterator 物件,透過此 Iterator 物件可以一個一個地「走訪」 collection 內所有的元素。下一節對 Iterator 有更詳細的說明。

為了方便,你可以透過下面的 method 來將此集合轉成陣列:

public Object[] toArray()

public Object[] toArray(Object[] a)

此二 method 傳出一個 collection 元素所形成的陣列。第二個 method 傳出的陣列型態同 a 物件。

請注意,上述這些 methods 都是每個 Collection 的子類別必須實作的。

什麼 Iterator?Enumerator?我的天呀!
究竟 java.util.Iterator 介面是做什麼的?它本質上是一種 Enumeration 。你可能還記得在 JDK 1.0 和 JDK 1.1 中, Enumeration 是用來讓你一一造訪所有元素的一種工具。

public Object next()

傳出此 iterator 的下一個元素。

public boolean hasNext()

如果你還未一一造訪完所有的元素,則傳出 true 。換句話說,如果呼叫 next()可以正常取得元素的話,傳出 true。

此二 method 就如同 Enumeration 的 nextElement() 和 hasMoreElements() 一般。下面的範例展示如何使用 Iterator 來印出 collection 內的每一個元素。

public void printElements(Collection c, PrintStream out) {
Iterator iterator = c.iterator();
while (iterator.hasNext())
out.println(iterator.next());
}


Iterator 也可以用來移除 collection 內的元素:

public void remove()

移走此 iterator 的 collection 的下一個物件(也就是 next() 傳出的物件)。並非所有的 iterator 都有實作此 method ,比方說,唯讀的 collection 就不需要實作此 method 。如果不允許使用 remove() 的話,那麼 remove() 就應該傳出 UnsupportedOperationException 例外。如果你一開始尚未透過 next() 來指到初始位置就先呼叫 remove() ,或者是連續呼叫 remove() 兩次,就會收到 IllegalStateException 例外。

Collection 的種類
Collection 介面有兩個子介面: Set 介面不允許重複的元素; List 介面的元素必須有特定編號次序。 Set 介面還有一個子介面叫做 SortedSet ,其元素都必須維持在排序狀態(關於排序,稍後再詳談)。

除了那些繼承自 Collection 的 method 之外, Set 沒有其它的 method 。另外, Set 強制規定不允許重複的元素,如果意圖加入重複的元素,那麼 add() method會傳出 false 。

SortedSet 比 Set 多了幾個 method 。不管你用 add() 或 remove(),SortedSet 一定都會保持順序。利用 subSet()、headSet()、以及 tailSet() ,你可以取出一個也是有序的子集合。利用 first()、last()、以及 comparator(),你分別可以取得第一個元素、最後一個元素,以及用來比較元素的物件(稍後再詳述)。

另一個 Set 的子介面是 List,List 介面有能力處理特定位置的元素。

public void add(int index, Object element)

將物件放到特定位置。如果位置小於 0 或大於總個數,就會收到 IndexOutOfBoundsException 例外。原位置以及其後的物件會向後順移一個位置。

public void remove(int index)

移走特定位置的物件,所有後續的物件向前遞移一格。

public void get(int index)

取得特定位置的物件。

public void set(int index, Object element)

將特定位置的物件用另一個物件取代。

List 還有一些其它的 method ,但是礙於篇幅,我不打算在此說明。後面的小節中,我會介紹有哪些類別實作了這些 collection 介面。
xitianjile 2005-03-10
  • 打赏
  • 举报
回复
有很多Connection类。
JAVA开发人员必备是HTML格式的 JavaTM 2 Platform Standard Edition 6 API 规范 本文档是 Java 2 Platform Standard Edition 6.0 的 API 规范。 请参见: 描述 Java 2 Platform 软件包 java.applet 提供创建 applet 所必需的和 applet 用来与其 applet 上下文通信的java.awt 包含用于创建用户界面和绘制图形图像的所有java.awt.color 提供用于颜色空间的java.awt.datatransfer 提供在应用程序之间和在应用程序内部传输数据的接口和java.awt.dnd Drag 和 Drop 是一种直接操作动作,在许多图形用户界面系统都会遇到它,它提供了一种机制,能够在两个与 GUI 显示元素逻辑相关的实体之间传输信息。 java.awt.event 提供处理由 AWT 组件所激发的各事件的接口和java.awt.font 提供与字体相关的和接口。 java.awt.geom 提供用于在与二维几何形状相关的对象上定义和执行操作的 Java 2D java.awt.im 提供输入方法框架所需的和接口。 java.awt.im.spi 提供启用可以与 Java 运行时环境一起使用的输入方法开发的接口。 java.awt.image 提供创建和修改图像的各种java.awt.image.renderable 提供用于生成与呈现无关的图像的和接口。 java.awt.print 为通用的打印 API 提供和接口。 java.beans 包含与开发 beans 有关的,即基于 JavaBeansTM 架构的组件。 java.beans.beancontext 提供与 bean 上下文有关的和接口。 java.io 通过数据流、序列化和文件系统提供系统输入和输出。 java.lang 提供利用 Java 编程语言进行程序设计的基础java.lang.annotation 为 Java 编程语言注释设施提供库支持。 java.lang.instrument 提供允许 Java 编程语言代理检测运行在 JVM 上的程序的服务。 java.lang.management 提供管理接口,用于监视和管理 Java 虚拟机以及 Java 虚拟机在其上运行的操作系统。 java.lang.ref 提供了引用对象,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供和接口,以获得关于和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的java.net 为实现网络应用程序提供java.nio 定义作为数据容器的缓冲区,并提供其他 NIO 包的概述。 java.nio.channels 定义了各种通道,这些通道表示到能够执行 I/O 操作的实体(如文件和套接字)的连接;定义了用于多路复用的、非阻塞 I/O 操作的选择器。 java.nio.channels.spi 用于 java.nio.channels 包的服务提供者java.nio.charset 定义用来在字节和 Unicode 字符之间转换的 charset、解码器和编码器。 java.nio.charset.spi java.nio.charset 包的服务提供者java.rmi 提供 RMI 包。 java.rmi.activation 为 RMI 对象激活提供支持。 java.rmi.dgc 为 RMI 分布式垃圾回收提供了和接口。 java.rmi.registry 提供 RMI 注册表的一个和两个接口。 java.rmi.server 提供支持服务器端 RMI 的和接口。 java.security 为安全框架提供和接口。 java.security.acl 此包和接口已经被 java.security 包取代。 java.security.cert 提供用于解析和管理证书、证书撤消列表 (CRL) 和证书路径的和接口。 java.security.interfaces 提供的接口用于生成 RSA Laboratory Technical Note PKCS#1 定义的 RSA(Rivest、Shamir 和 Adleman AsymmetricCipher 算法)密钥,以及 NIST 的 FIPS-186 定义的 DSA(数字签名算法)密钥。 java.security.spec 提供密钥规范和算法参数规范的和接口。 java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的和接口。 java.text.spi java.text 包的服务提供者java.util 包含 collection 框架、遗留的 collection 、事件模型、日期和时间设施、国际化和各种实用工具(字符串标记生成器、随机数生成器和位数组)。 java.util.concurrent 在并发编程很常用的实用工具java.util.concurrent.atomic 的小工具包,支持在单个变量上解除锁的线程安全编程。 java.util.concurrent.locks 为锁和等待条件提供一个框架的接口和,它不同于内置同步和监视器。 java.util.jar 提供读写 JAR (Java ARchive) 文件格式的,该格式基于具有可选清单文件的标准 ZIP 文件格式。 java.util.logging 提供 JavaTM 2 平台核心日志工具的和接口。 java.util.prefs 此包允许应用程序存储并获取用户和系统首选项和配置数据。 java.util.regex 用于匹配字符序列与正则表达式指定模式的java.util.spi java.util 包的服务提供者java.util.zip 提供用于读写标准 ZIP 和 GZIP 文件格式的javax.accessibility 定义了用户界面组件与提供对这些组件进行访问的辅助技术之间的协定。 javax.crypto 为加密操作提供和接口。 javax.crypto.interfaces 根据 RSA Laboratories' PKCS #3 的定义,提供 Diffie-Hellman 密钥接口。 javax.crypto.spec 为密钥规范和算法参数规范提供和接口。 javax.imageio Java Image I/O API 的主要包。 javax.imageio.event Java Image I/O API 的一个包,用于在读取和写入图像期间处理事件的同步通知。 javax.imageio.metadata 用于处理读写元数据的 Java Image I/O API 的包。 javax.imageio.plugins.bmp 包含供内置 BMP 插件使用的公共的包。 javax.imageio.plugins.jpeg 支持内置 JPEG 插件的javax.imageio.spi 包含用于 reader、writer、transcoder 和流的插件接口以及一个运行时注册表的 Java Image I/O API 包。 javax.imageio.stream Java Image I/O API 的一个包,用来处理从文件和流产生的低级别 I/O。 javax.management 提供 Java Management Extensions 的核心javax.management.loading 提供实现高级动态加载的javax.management.modelmbean 提供了 ModelMBean 的定义。 javax.management.monitor 提供 monitor 的定义。 javax.management.openmbean 提供开放数据型和 Open MBean 描述符javax.management.relation 提供 Relation Service 的定义。 javax.management.remote 对 JMX MBean 服务器进行远程访问使用的接口。 javax.management.remote.rmi RMI 连接器是供 JMX Remote API 使用的一种连接器,后者使用 RMI 将客户端请求传输到远程 MBean 服务器。 javax.management.timer 提供对 Timer MBean(计时器 MBean)的定义。 javax.naming 为访问命名服务提供和接口。 javax.naming.directory 扩展 javax.naming 包以提供访问目录服务的功能。 javax.naming.event 在访问命名和目录服务时提供对事件通知的支持。 javax.naming.ldap 提供对 LDAPv3 扩展操作和控件的支持。 javax.naming.spi 提供一些方法来动态地插入对通过 javax.naming 和相关包访问命名和目录服务的支持。 javax.net 提供用于网络应用程序的javax.net.ssl 提供用于安全套接字包的javax.print 为 JavaTM Print Service API 提供了主要和接口。 javax.print.attribute 提供了描述 JavaTM Print Service 属性的型以及如何分这些属性的和接口。 javax.print.attribute.standard 包 javax.print.attribute.standard 包括特定打印属性的javax.print.event 包 javax.print.event 包含事件和侦听器接口。 javax.rmi 包含 RMI-IIOP 的用户 API。 javax.rmi.CORBA 包含用于 RMI-IIOP 的可移植性 API。 javax.rmi.ssl 通过安全套接字层 (SSL) 或传输层安全 (TLS) 协议提供 RMIClientSocketFactory 和 RMIServerSocketFactory 的实现。 javax.security.auth 此包提供用于进行验证和授权的框架。 javax.security.auth.callback 此包提供与应用程序进行交互所必需的,以便检索信息(例如,包括用户名和密码的验证数据)或显示信息(例如,错误和警告消息)。 javax.security.auth.kerberos 此包包含与 Kerberos 网络验证协议相关的实用工具javax.security.auth.login 此包提供可插入的验证框架。 javax.security.auth.spi 此包提供用于实现可插入验证模块的接口。 javax.security.auth.x500 此包包含应该用来在 Subject 存储 X500 Principal 和 X500 Private Crendentials 的javax.security.cert 为公钥证书提供javax.security.sasl 包含用于支持 SASL 的和接口。 javax.sound.midi 提供用于 MIDI(音乐乐器数字接口)数据的 I/O、序列化和合成的接口和javax.sound.midi.spi 在提供新的 MIDI 设备、MIDI 文件 reader 和 writer、或音库 reader 时提供服务提供者要实现的接口。 javax.sound.sampled 提供用于捕获、处理和回放取样的音频数据的接口和javax.sound.sampled.spi 在提供新音频设备、声音文件 reader 和 writer,或音频格式转换器时,提供将为其创建子的服务提供者的抽象javax.sql 为通过 JavaTM 编程语言进行服务器端数据源访问和处理提供 API。 javax.sql.rowset JDBC RowSet 实现的标准接口和基javax.sql.rowset.serial 提供实用工具,允许 SQL 型与 Java 编程语言数据型之间的可序列化映射关系。 javax.sql.rowset.spi 第三方供应商在其同步提供者的实现必须使用的标准和接口。 javax.swing 提供一组“轻量级”(全部是 Java 语言)组件,尽量让这些组件在所有平台上的工作方式都相同。 javax.swing.border 提供围绕 Swing 组件绘制特殊边框的和接口。 javax.swing.colorchooser 包含供 JColorChooser 组件使用的和接口。 javax.swing.event 供 Swing 组件触发的事件使用。 javax.swing.filechooser 包含 JFileChooser 组件使用的和接口。 javax.swing.plaf 提供一个接口和许多抽象,Swing 用它们来提供自己的可插入外观功能。 javax.swing.plaf.basic 提供了根据基本外观构建的用户界面对象。 javax.swing.plaf.metal 提供根据 Java 外观(曾经代称为 Metal)构建的用户界面对象,Java 外观是默认外观。 javax.swing.plaf.multi 提供了组合两个或多个外观的用户界面对象。 javax.swing.plaf.synth Synth 是一个可更换皮肤 (skinnable) 的外观,在其可委托所有绘制。 javax.swing.table 提供用于处理 javax.swing.JTable 的和接口。 javax.swing.text 提供 HTMLEditorKit 和创建 HTML 文本编辑器的支持javax.swing.text.html 提供 HTMLEditorKit 和创建 HTML 文本编辑器的支持javax.swing.text.html.parser 提供默认的 HTML 解析器以及支持javax.swing.text.rtf 提供一个 (RTFEditorKit),用于创建富文本格式(Rich-Text-Format)的文本编辑器。 javax.swing.tree 提供处理 javax.swing.JTree 的和接口。 javax.swing.undo 允许开发人员为应用程序(例如文本编辑器)的撤消/恢复提供支持。 javax.transaction 包含解组期间通过 ORB 机制抛出的三个异常。 javax.transaction.xa 提供定义事务管理器和资源管理器之间的协定的 API,它允许事务管理器添加或删除 JTA 事务的资源对象(由资源管理器驱动程序提供)。 javax.xml 根据 XML 规范定义核心 XML 常量和功能。 javax.xml.bind 为包含解组、编组和验证功能的客户端应用程序提供运行时绑定框架。 javax.xml.bind.annotation 定义将 Java 程序元素定制成 XML 模式映射的注释。 javax.xml.bind.annotation.adapters XmlAdapter 及其规范定义的子允许任意 Java 与 JAXB 一起使用。 javax.xml.bind.attachment 此包由基于 MIME 的包处理器实现,该处理器能够解释并创建基于 MIME 的包格式的已优化的二进制数据。 javax.xml.bind.helpers 仅由 JAXB 提供者用于: 提供某些 javax.xml.bind 接口的部分默认实现。 javax.xml.bind.util 有用的客户端实用工具javax.xml.crypto 用于 XML 加密的通用javax.xml.crypto.dom javax.xml.crypto 包的特定于 DOM 的javax.xml.crypto.dsig 用于生成和验证 XML 数字签名的javax.xml.crypto.dsig.dom javax.xml.crypto.dsig 包特定于 DOM 的javax.xml.crypto.dsig.keyinfo 用来解析和处理 KeyInfo 元素和结构的javax.xml.crypto.dsig.spec XML 数字签名的参数javax.xml.datatype XML/Java 型映射关系。 javax.xml.namespace XML 名称空间处理。 javax.xml.parsers 提供允许处理 XML 文档的javax.xml.soap 提供用于创建和构建 SOAP 消息的 API。 javax.xml.stream javax.xml.stream.events javax.xml.stream.util javax.xml.transform 此包定义了用于处理转换指令,以及执行从源到结果的转换的一般 API。 javax.xml.transform.dom 此包实现特定于 DOM 的转换 API。 javax.xml.transform.sax 此包实现特定于 SAX2 的转换 API。 javax.xml.transform.stax 提供特定于 StAX 的转换 API。 javax.xml.transform.stream 此包实现特定于流和 URI 的转换 API。 javax.xml.validation 此包提供了用于 XML 文档验证的 API。 javax.xml.ws 此包包含核心 JAX-WS API。 javax.xml.ws.handler 该包定义用于消息处理程序的 API。 javax.xml.ws.handler.soap 该包定义用于 SOAP 消息处理程序的 API。 javax.xml.ws.http 该包定义特定于 HTTP 绑定的 API。 javax.xml.ws.soap 该包定义特定于 SOAP 绑定的 API。 javax.xml.ws.spi 该包定义用于 JAX-WS 2.0 的 SPI。 javax.xml.xpath 此包提供了用于 XPath 表达式的计算和访问计算环境的 object-model neutral API。 org.ietf.jgss 此包提供一个框架,该框架允许应用程序开发人员通过利用统一的 API 使用一些来自各种基础安全机制(如 Kerberos)的安全服务,如验证、数据完整性和和数据机密性。 org.omg.CORBA 提供 OMG CORBA API 到 JavaTM 编程语言的映射,包括 ORB ,如果已实现该,则程序员可以使用此作为全功能对象请求代理(Object Request Broker,ORB)。 org.omg.CORBA_2_3 CORBA_2_3 包定义对 Java[tm] Standard Edition 6 现有 CORBA 接口所进行的添加。 org.omg.CORBA_2_3.portable 提供输入和输出值型的各种方法,并包含 org/omg/CORBA/portable 包的其他更新。 org.omg.CORBA.DynAnyPackage 提供与 DynAny 接口一起使用的异常(InvalidValue、Invalid、InvalidSeq 和 TypeMismatch)。 org.omg.CORBA.ORBPackage 提供由 ORB.resolve_initial_references 方法抛出的异常 InvalidName,以及由 ORB 的动态 Any 创建方法抛出的异常 InconsistentTypeCode。 org.omg.CORBA.portable 提供可移植性层,即可以使一个供应商生成的代码运行在另一个供应商 ORB 上的 ORB API 集合。 org.omg.CORBA.TypeCodePackage 提供用户定义的异常 BadKind 和 Bounds,它们将由 TypeCode 的方法抛出。 org.omg.CosNaming 为 Java IDL 提供命名服务。 org.omg.CosNaming.NamingContextExtPackage 此包包含以下在 org.omg.CosNaming.NamingContextExt 使用的: AddressHelper StringNameHelper URLStringHelper InvalidAddress 包规范 有关 Java[tm] Platform, Standard Edition 6 ORB 遵守的官方规范的受支持部分的明确列表,请参阅 Official Specifications for CORBA support in Java[tm] SE 6。 org.omg.CosNaming.NamingContextPackage 此包包含 org.omg.CosNaming 包的 Exception 。 org.omg.Dynamic 此包包含 OMG Portable Interceptor 规范 http://cgi.omg.org/cgi-bin/doc?ptc/2000-08-06 的第 21.9 小节指定的 Dynamic 模块。 org.omg.DynamicAny 提供一些和接口使得在运行时能够遍历与 any 有关联的数据值,并提取数据值的基本成分。 org.omg.DynamicAny.DynAnyFactoryPackage 此包包含 DynamicAny 模块的 DynAnyFactory 接口和异常,该模块在 OMG The Common Object Request Broker: Architecture and Specification http://cgi.omg.org/cgi-bin/doc?formal/99-10-07 的第 9.2.2 小节指定。 org.omg.DynamicAny.DynAnyPackage 此包包含 DynAny 模块的 DynAnyFactory 接口和异常,该模块在 OMG The Common Object Request Broker: Architecture and Specification http://cgi.omg.org/cgi-bin/doc?formal/99-10-07 的第 9.2 小节指定。 org.omg.IOP 此包包含在 OMG 文档 The Common Object Request Broker: Architecture and Specification http://cgi.omg.org/cgi-bin/doc?formal/99-10-07 的 13.6.小节指定的 IOP 模块。 org.omg.IOP.CodecFactoryPackage 此包包含 IOP::CodeFactory 接口指定的异常(作为 Portable Interceptor 规范的一部分)。 org.omg.IOP.CodecPackage 此包根据 IOP::Codec IDL 接口定义生成。 org.omg.Messaging 此包包含 OMG Messaging Interceptor 规范 http://cgi.omg.org/cgi-bin/doc?formal/99-10-07 指定的 Messaging 模块。 org.omg.PortableInterceptor 提供一个注册 ORB 钩子 (hook) 的机制,通过这些钩子 ORB 服务可以截取执行 ORB 的正常流。 org.omg.PortableInterceptor.ORBInitInfoPackage 此包包含 OMG Portable Interceptor 规范 http://cgi.omg.org/cgi-bin/doc?ptc/2000-08-06 的第 21.7.2 小节指定的 PortableInterceptor 模块的 ORBInitInfo 本地接口的异常和 typedef。 org.omg.PortableServer 提供一些和接口,用来生成跨多个供应商 ORB 的可移植应用程序的服务器端。 org.omg.PortableServer.CurrentPackage 提供各种方法实现,这些实现能够访问调用方法的对象的身份。 org.omg.PortableServer.POAManagerPackage 封装 POA 关联的处理状态。 org.omg.PortableServer.POAPackage 允许程序员构造可在不同 ORB 产品间移植的对象实现。 org.omg.PortableServer.portable 提供一些和接口,用来生成跨多个供应商 ORB 的可移植应用程序的服务器端。 org.omg.PortableServer.ServantLocatorPackage 提供定位 servant 的和接口。 org.omg.SendingContext 为值型的编组提供支持。 org.omg.stub.java.rmi 包含用于 java.rmi 包出现的 Remote 型的 RMI-IIOP Stub。 org.w3c.dom 为文档对象模型 (DOM) 提供接口,该模型是 Java API for XML Processing 的组件 API。 org.w3c.dom.bootstrap org.w3c.dom.events org.w3c.dom.ls org.xml.sax 此包提供了核心 SAX API。 org.xml.sax.ext 此包包含适合的 SAX 驱动程序不一定支持的 SAX2 设施的接口。 org.xml.sax.helpers 此包包含“帮助器”,其包括对引导基于 SAX 的应用程序的支持。
该课程由付强老师主讲,系统的、全面的、具体的讲解了java入门的知识。可以使初级的学员入门。Java入门Java的历史、Java的版本、Java的优势、软件行业前景Java开发环境搭建、编写Java入门练习虚拟机的运行机制、Java的平台无关性、虚拟机垃圾回收机制基础语法关键字、标识符、Java数据型分、基础数据型、取值范围变量、常量、三种注释、生成doc文档、运算符、表达式if语句、switch语句、嵌套判断for语句、while语句、do-while语句、嵌套循环和对象面向过程和面向对象的区别的构成、访问修饰符、对象的内存分配this关键字、按值传递与按引用传递、对象的初始化顺序高级特性的继承、父子的初始化顺序、单继承性方法的覆盖、重载、super关键字、多态、instanceof关键字、强制型转换、static关键字、final关键字数组和枚举一维数组的应用及内存分配多维数组的应用及内存分配数组的复制、数组的按引用传递排序算法:冒泡、直接选择、插入选择、希尔、快速、归并、堆排序Arrays工具的应用枚举型的应用常见的使用Object的底层及应用、ObjectsString的底层及应用、正则表达式StringBuffer和StringBuilder的底层及应用Math的应用、包装的应用日期的应用:Date、DateFormat、Calendar、LocalDateTime、Instant、LocalDate、MonthDay、ZonedDateTime、YearMonth、新旧日期转换BigInteger和BingDecimal、DecimalFormatSystem、Scanner抽象和接口抽象的规则及应用接口的规则及应用默认方法、静态方法、函数式接口、Lambda表达式异常异常的定义异常的处理:抓(try-catch-finally)、抛(throws)异常的分、自定义异常的应用、throw关键字集合框架集合框架结构:接口、实现Collection接口的方法、Set接口的方法、List接口的方法、Map接口的方法Array、Linked、Hash、Tree底层实现原理泛型的作用、Collections工具、历史集合I/O流Path的原理及应用、Files的原理及应用文件字节流FileInputStream的原理及应用对象、缓冲流、数据流的原理及应用字符流的原理及应用多线程进程与线程的概念、查看线程对象Java内存模型线程的创建与启动:扩展Thread、实现Runnable接口、实现Callable接口、线程池线程状态的转换:新建、就绪、运行、阻塞、死亡线程的调度:sleep、yield、join、interrupt、wait后台线程、定时任务线程的并发与同步、同步锁、同步块、线程安全的Lock接口、CAS、volatile修饰符内部成员内部、本地内部的应用匿名内部的原理及引用、Lambda表达式设计模式基础设计模式概念、框架概念7大设计原则:开闭原则、依赖倒置原则、单一职责原则、接口隔离原则、迪米特原则、里氏替换原则、合成复用原则单例模式、工厂模式、模板模式、代理模式、装饰模式、适配器模式、外观模式、策略模式、观察者模式、命令模式、备忘录模式、观察者模式反射反射包Class的使用反射获取属性、方法、构造器通过反射创建对象/通过反射调用方法反射的应用

62,617

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧