参考答案:
详细解析:
(共15分)
阅读以下说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
已知类LinkedList表示列表类,该类具有四个方法:addElement()、lastElemen()、numberOfElement()以及removeLastElement()。四个方法的含义分别为:
void addElement(Object):在列表尾部添加一个对象;
Object lastElement():返回列表尾部对象;
int numberOfElement():返回列表中对象个数;
void removeLastElement():删除列表尾部的对象。
现需要借助LinkedList来实现一个Stack栈类,Java代码1和Java代码2分别采用继承和组合的方式实现。
【Java代码1】
public class Stack extends LinkedList{
public void push(Object o){ //压栈
addElement(o);
}
public Object peek(){ //获取栈顶元素
return (1) ;
}
public boolean isEmpty(){ //判断栈是否为空
return numberOfElement()=0;
}
public Object pop(){ //弹栈
Object o=lastElement();
(2) ;
return o;
}
}
【Java代码2】
public class Stack{
private (3) ;
public Stack(){
list=new LinkedList();
}
public void push(Object o){
list.addElement(o);
}
public Object peek{ //获取栈顶元素
return list. (4) ;
}
public boolean isEmpty(){ //判断栈是否为空
return list.numberOfElement()==0;
}
public Object pop(){ //弹栈
Object o=list. lastElement();
list.removeLastElemento;
return o;
}
}
【问题】
若类LinkedList新增加了一个公有的方法removeElement(int index),用于删除列表中第index个元素,则在用继承和组合两种实现栈类Stack的方式中,哪种方式下Stack对象可访问方法removeElement(int index)? (5) (A.继承B.组合)
参考答案:
详细解析: