我的问题是链接<(E)>,是说:
" sun.awt.image.ImageWatched.Link不接受参数;"
我已经导入了sun.awt.image.ImageWatched.Link; 代码有什么问题? 我该如何做对?
以下是代码:
public class LStack<E> implements Stack<E> {
private Link<E> top=;
private int size;
public LStack(){
top = null;
size = 0;
}
public LStack(int size){
top = null;
size = 0;
}
@Override
public void clear(){
top = null;
size = 0;
}
@Override
public void push(E it){
top = new Link<E>(it, top);
}
@Override
public E pop(){
assert top != 0 : "Stack is empty";
E it = top.element();
top = top.next();
size--;
return it;
}
@Override
public E topValue(){
assert top != 0 : "Stack is empty";
return top.element();
}
@Override
public int length(){
return size;
}
}
答案 0 :(得分:0)
您引用Link<E>
,好像Link
是通用的,但事实并非如此。
我认为真正的问题是:为什么要尝试使用sun.awt.image.ImageWatched.Link
?它似乎是出于特定目的而与您的目的不同。
我认为您应该定义自己的(通用)Link<E>
类。它需要做的只是保持E
类型和next
引用。