java无法从静态上下文中引用它不能从静态上下文中引用
我试图对代码进行一点抽象,但我克服了一个我不知道如何处理的错误java无法从静态上下文中引用它不能从静态上下文中引用,java,generics,abstraction,Java,Generics,Abstraction,我试图对代码进行一点抽象,但我克服了一个我不知道如何处理的错误 public interface Manager<T extends Member> { Set<T> member = new HashSet<>(); default Member getMember(String name){ for(T m : member){ if(m.getName().equalsIgnoreCase(nam
public interface Manager<T extends Member> {
Set<T> member = new HashSet<>();
default Member getMember(String name){
for(T m : member){
if(m.getName().equalsIgnoreCase(name)){
return m;
}
}
return null;
}
}
公共接口管理器{
Set成员=新的HashSet();
默认成员getMember(字符串名称){
代表(T m:成员){
if(m.getName().equalsIgnoreCase(名称)){
返回m;
}
}
返回null;
}
}
现在,当我将鼠标悬停在集合中的T上时,我得到“Manager.this不能从静态上下文引用”。我真的不知道为什么 默认情况下,接口中的字段是静态的。
member
是隐式的publicstaticfinal
。static
部分表示在字段声明中不能使用T
(作为实例成员的类型参数)。