|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface NamingEnumeration<T>
此介面用於列舉 javax.naming 和 javax.naming.directory 套件中的方法所返回的列表。它擴展了 Enumeration,允許在列舉期間拋出異常。
當某一方法(比如 list()、listBindings() 或 search())返回 NamingEnumeration 時,在返回所有結果之前,將保留所遇到的所有異常。在列舉結束時拋出異常(由 hasMore() 完成)。
例如,如果 list() 只返回一部分內容,則相應的異常將是 PartialResultException。list() 將先返回一個 NamingEnumeration。當已由 NamingEnumeration 的 next() 返回最後結果時,調用 hasMore() 將導致拋出 PartialResultException。
在另一個範例中,在指定大小限制為 'n' 的情況下調用 search() 方法。如果結果由 'n' 個以上的結果組成,則 search() 將首先返回一個 NamingEnumeration。當已經通過對 NamingEnumeration 調用 next() 返回了第 n 個結果時,將在調用 hasMore() 時拋出 SizeLimitExceedException。
注意,如果程序使用 hasMoreElements() 和 nextElement() 而不是在 NamingEnumeration 上迭代,那麼因為這些方法無法拋出異常,所以不會拋出異常。此外,在前面的範例中,在 nextElement() 已返回第 n 個結果後,調用 hasMoreElements() 將返回 false。
還要注意的是,如果在列舉中沒有剩餘元素時該程序調用 next() 或 nextElement(),則將拋出 NoSuchElementException。通過使用 hasMore() 和 hasMoreElements() 檢查是否已經到達列舉末尾,程序總是可以避免此異常。
如果列舉期間拋出異常,則該列舉變得無效。對該列舉後續調用任何方法都將產生不確定的結果。
Context.list(javax.naming.Name)
,
Context.listBindings(javax.naming.Name)
,
DirContext.search(javax.naming.Name, javax.naming.directory.Attributes, java.lang.String[])
,
Attributes.getAll()
,
Attributes.getIDs()
,
Attribute.getAll()
方法摘要 | |
---|---|
void |
close()
關閉此列舉。 |
boolean |
hasMore()
確定列舉中是否還有元素。 |
T |
next()
檢索列舉中的下一個元素。 |
從介面 java.util.Enumeration 繼承的方法 |
---|
hasMoreElements, nextElement |
方法詳細資訊 |
---|
T next() throws NamingException
注意,next() 還可以拋出運行時異常 NoSuchElementException,指示調用者試圖超出列舉的尾部進行列舉。此異常不同於 NamingException,後者指示在獲得下一個元素時存在問題,比如說,因為某一項參考或者伺服器不可用等等。
NamingException
- 如果在試圖檢索下一個元素時遇到命名異常。有關可能的命名異常,請參見 NamingException 及其子類別。
NoSuchElementException
- 如果試圖在沒有元素可用時獲得下一個元素。Enumeration.nextElement()
boolean hasMore() throws NamingException
NamingException
- 如果在試圖確定列舉中是否還有另一個元素時遇到命名異常。有關可能的命名異常,請參見 NamingException 及其子類別。Enumeration.hasMoreElements()
void close() throws NamingException
此方法指示服務提供者隨意釋放與該列舉關聯的資源,並且可以通知伺服器取消任何未處理的請求。close() 方法是實作管理其資源的一個提示。當客戶端忽略 close() 調用時,建議實作使用適當的演算法管理其資源。
NamingException
- 如果關閉列舉時遇到命名異常。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。