java容器 抽象类Dictionary源码分析

简介

/**
 * Dictionary类是Hashtable,它将键映射到值。
 * 每个键和值都是一个对象。在任何一个Dictionary对象中,每个键最多与一个值关联。
 * 给定一个字典和一个键,就可以查找相关的元素。任何非空对象都可以用作键和值。
 * 
 * 

* 作为一个规则,这个类的实现应该使用equals方法来确定两个键是否相同。 *

* 注意:这个类已经过时了。新的实现应该实现Map接口,而不是扩展这个类。 * * @author unascribed * @see java.util.Map * @see java.lang.Object#equals(java.lang.Object) * @see java.lang.Object#hashCode() * @see java.util.Hashtable * @since JDK1.0 */ public abstract class Dictionary

java容器 抽象类Dictionary源码分析_第1张图片

构造器函数,size,isEmpty,keys,elements

    /**
     * Sole constructor.  (For invocation by subclass constructors, typically
     * implicit.)
     */
    public Dictionary() {
    }

    /**
     * Returns the number of entries (distinct keys) in this dictionary.
     *
     * @return  the number of keys in this dictionary.
     */
    abstract public int size();

    /**
     * Tests if this dictionary maps no keys to value. The general contract
     * for the isEmpty method is that the result is true if and only
     * if this dictionary contains no entries.
     *
     * @return  true if this dictionary maps no keys to values;
     *          false otherwise.
     */
    abstract public boolean isEmpty();

    /**
     * 返回此字典中键的enumeration。
     * keys方法的一般约定是返回一个Enumeration对象,该对象将生成字典中包含的所有键。
     *
     * @return  an enumeration of the keys in this dictionary.
     * @see     java.util.Dictionary#elements()
     * @see     java.util.Enumeration
     */
    abstract public Enumeration keys();

    /**
     * 返回此字典中values的enumeration。
     * elements方法的一般约定是返回一个Enumeration对象,该对象将生成字典中包含的所有value。
     *
     * @return  an enumeration of the values in this dictionary.
     * @see     java.util.Dictionary#keys()
     * @see     java.util.Enumeration
     */
    abstract public Enumeration elements();

get,put,remove

    /**
     * Returns the value to which the key is mapped in this dictionary.
     * The general contract for the isEmpty method is that if this
     * dictionary contains an entry for the specified key, the associated
     * value is returned; otherwise, null is returned.
     *
     * @return  the value to which the key is mapped in this dictionary;
     * @param   key   a key in this dictionary.
     *          null if the key is not mapped to any value in
     *          this dictionary.
     * @exception NullPointerException if the key is null.
     * @see     java.util.Dictionary#put(java.lang.Object, java.lang.Object)
     */
    abstract public V get(Object key);

    /**
     * Maps the specified key to the specified
     * value in this dictionary. Neither the key nor the
     * value can be null.
     * 

* If this dictionary already contains an entry for the specified * key, the value already in this dictionary for that * key is returned, after modifying the entry to contain the * new element.

If this dictionary does not already have an entry * for the specified key, an entry is created for the * specified key and value, and null is * returned. *

* The value can be retrieved by calling the * get method with a key that is equal to * the original key. * * @param key the hashtable key. * @param value the value. * @return the previous value to which the key was mapped * in this dictionary, or null if the key did not * have a previous mapping. * @exception NullPointerException if the key or * value is null. * @see java.lang.Object#equals(java.lang.Object) * @see java.util.Dictionary#get(java.lang.Object) */ abstract public V put(K key, V value); /** * Removes the key (and its corresponding * value) from this dictionary. This method does nothing * if the key is not in this dictionary. * * @param key the key that needs to be removed. * @return the value to which the key had been mapped in this * dictionary, or null if the key did not have a * mapping. * @exception NullPointerException if key is null. */ abstract public V remove(Object key);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(java容器,源码分析)