无法理解注释行的意义
有人能帮助我理解Object在这门课上的用法吗?我拿不到
public abstract class ListItem {
protected ListItem rightLink = null;
protected ListItem leftLink = null;
protected Object value; //confused about this
public ListItem(Object value) {
this.value = value;
}
abstract ListItem next();
abstract ListItem setNext(ListItem item);
abstract ListItem previous();
abstract ListItem setPrevious(ListItem item);
abstract int compareTo(ListItem item);
public Object getValue() {
return value;
}
public void setValue(Object value) {
this.value = value;
}
}
在我看来,这就像一个双链接列表,其中value
包含实际的列表项,leftLink
和rightLink
是对左右项的引用。你不明白的是什么?
Object
在您的情况下只是意味着,ListItem
的值几乎可以是任何Object。例如,第一个ListItem的值可以是String
,第二个是Integer
,依此类推。所以,如果你从列表中得到一个ListItem,你就不知道它是哪种类型,因为它可以是任何类型。但正如Jon在评论中已经提到的那样,最好使用通用的ListItem<T>
。