簡體   English   中英

Hashtable是否實現Map接口中的所有方法?

[英]Does the Hashtable implement every method in the Map interface?

由於用Java實現接口的類必須定義該接口中的每個方法,以避免被聲明為抽象,所以我想知道以下內容:

創建實例化Hashtable對象的程序時,為什么不需要在Map接口中定義每個方法? 我沒有明確定義的方法會自動創建為“存根”嗎?

您正在從Hashtable類創建一個對象,該對象已經實現了所有必需的方法。您不是在創建類,而是從該類創建對象。 如果您創建了一個實現Map的類,則編譯器會要求您實現所有必要的方法。

Hashtable是否實現Map接口中的所有方法?

是。 如果您看一下JavaDoc,則將Hashtable類定義為

public class Hashtable<K,V>
extends Dictionary<K,V>
implements Map<K,V>, Cloneable, Serializable

請注意,這個類沒有被聲明為抽象的 ,它實現了Map。 因此,它必須並且確實實現了Map接口中定義的所有方法。

創建實例化Hashtable對象的程序時,為什么不需要在Map接口中定義每個方法?

實例化對象時,其方法的實現由其類提供。 因此,當實例化Hashtable對象時,它使用Hastable類已經提供的實現。

當您創建類而不是實例化類時,需要提供實現。 在實例化時,該類不能是抽象的,即實現應該已經存在。 要么由您提供,要么就JDK的Hashtable

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM