我已经给出了一个挑战,即我必须从给定的索引处获得列表项的值,这是Queue类(项目是私有的)之外的。我不允许修改这个类,也不允许使用Reflection。是否有可能(在真实情况下,我宁愿创建公共访问器来获取项目值)?访问Java中没有公共访问器的私有成员
class Queue {
private List<Integer> items;
private Queue() {
items = new ArrayList<Integer>();
}
public static Queue create() {
return new Queue();
}
public void push(int item) {
items.add(item);
}
public int shift() {
return items.remove(0);
}
public boolean isEmpty() {
return items.size() == 0;
}
}
是的,你是对的。我认为我错过了整数的shift()返回值。 –