Java 非Null注释-非法重新定义参数(Eclipse)
我试图使用Eclipse非空注释,但是我无法理解下面描述的行为。我不明白Eclipse在抱怨什么 Compiles/Eclipse不会抱怨任何事情: Eclipse抱怨非法重新定义参数nonNullString,从NonNull1继承的方法不约束此参数,但编译/运行良好: 环境:使用Jdk8编译器的Eclipse4.4.1遵从性级别:1.8Java 非Null注释-非法重新定义参数(Eclipse),java,eclipse,non-nullable,Java,Eclipse,Non Nullable,我试图使用Eclipse非空注释,但是我无法理解下面描述的行为。我不明白Eclipse在抱怨什么 Compiles/Eclipse不会抱怨任何事情: Eclipse抱怨非法重新定义参数nonNullString,从NonNull1继承的方法不约束此参数,但编译/运行良好: 环境:使用Jdk8编译器的Eclipse4.4.1遵从性级别:1.8 您使用的是哪个版本的eclipse?这个项目的jre合规级别是多少?我已经在最新的eclipse 1.8上尝试过了,没有错误。您是否在java编译器设置中设
您使用的是哪个版本的eclipse?这个项目的jre合规级别是多少?我已经在最新的eclipse 1.8上尝试过了,没有错误。您是否在java编译器设置中设置/修改了与错误/警告相关的任何首选项?添加了有关环境的更多信息。
import org.eclipse.jdt.annotation.NonNull;
public class NonNullStaticInnerClasses {
public static class NonNull1{
protected String nonNullString;
public void setNonNullString(@NonNull String nonNullString){
this.nonNullString = nonNullString;
}
}
public static class NonNull2 extends NonNullStaticInnerClasses.NonNull1 {
public void setNonNullString(@NonNull String nonNullString){
this.nonNullString = nonNullString;
}
}
}
import org.eclipse.jdt.annotation.NonNull;
public class NonNull1{
protected String nonNullString;
public void setNonNullString(@NonNull String nonNullString){
this.nonNullString = nonNullString;
}
}
public class NonNull2 extends NonNull1 {
public void setNonNullString(@NonNull String nonNullString){
this.nonNullString = nonNullString;
}
}