【发布时间】:2016-08-13 17:51:33
【问题描述】:
我有这段代码,我想了解它是如何工作的。
public class LRUAlgoCacheImpl<K,V> implements IAlgoCache<K,V>{
private int capacity;
private LinkedHashMap<K,V> lhm;
public LRUAlgoCacheImpl(int capacity) {
lhm = new LinkedHashMap<K,V>(capacity+1,1.1f, true) {
protected boolean removeEldestEntry(Map.Entry<K, V> eldest) {
return lhm.size()> capacity;
}
};
this.capacity=capacity;
}
我知道它会覆盖 LinkedHashMap 类中的 removeEldestEntry,但我不太明白如何。
我可以在我的类声明中扩展LinkedHashmap 而无需这样做,而只是进行常规覆盖,但我正在尝试了解更多信息。
有人可以向我解释一下吗?
提前谢谢你。
【问题讨论】: