我有以下扩展JFrame的类
@SuppressWarnings("serial")
public class View extends JFrame{
//bla bla bla bla code
}
现在我有以下子类:
public class Foo extends View{
//bla bla bla bla
}
在 View
类中,Eclipse给了我一个警告,所以我添加了SuppressWarnings来摆脱它。我认为通过这样做我不必在Foo类中重新键入SuppressWarnings但是因为它似乎是eclipse在Foo课上给我一个警告。这会发生吗?
答案 0 :(得分:1)
@SuppressWarnings 是Java中注释的一个示例。你想要的是让Foo继承View的注释。
然而,这在Java中是不可能的。 This问题描述了为什么它不可能(因为否则可能会发生多重继承,因为接口方法也可能有注释。
当Eclipse给你一个警告时,你不应该忽略它。尝试让Eclipse感到高兴,因为它只会在有充分理由的情况下向您发出警告。如果您确信在您的程序中SuppressWarnings是合适的,那么所有子类也必须使用相同的注释。
答案 1 :(得分:0)
JFrame实现Serializable
接口。对于实现Serializable
的类,eclipse会要求它具有serialVersionUID。
View扩展自JFrame,我们可以说它也实现了Serializable
接口。 Foo
也是如此,这就是为什么你需要为View
和Foo
添加serialVersionUID或添加Suppress-Warning的原因。