代码演示:主要看一下结构 每行代码的含义不需要去研究
public interface Map<K,V> { //Map接口
/*省略代码*/
interface Entry<K,V> { //Map.Entry是Map下面的一个内部接口
K getKey(); //Map.Entry接口的抽象方法
V getValue();
V setValue(V value);
boolean equals(Object o);
int hashCode();
}
}
public class HashMap<K,V> /*省略代码*/{ //HashMap类
/*省略代码*/
static class Entry<K,V> implements Map.Entry<K,V> { //Entry是Map的子类 里面的一个静态的成员内部类并且实现了Map.Entry接口
Entry(int h, K k, V v, Entry<K,V> n) {
value = v;
next = n;
key = k;
hash = h;
}
public final K getKey() {
return key;
}
public final V getValue() {
return value;
}
public final V setValue(V newValue) {
V oldValue = value;
value = newValue;
return oldValue;
}
/*省略代码*/
}
/*省略代码*/
}