当我在抽象类或接口的帮助下运行一个简单的代码时,在编译main方法时,它要求我强制在父抽象类(或接口)中定义一个实例变量,即使我已经定义了&甚至使用子类中的构造函数初始化它。除此之外,如果我在父类(或接口)中定义变量值,它只修复变量值,即它使我必须定义一个变量,然后将其视为“静态”变量。 '最终&#39 ;.我正在使用eclipse进行编译。如果有的话我会犯什么错误。
我通过其他论坛阅读如果在界面中定义变量,则会自动将其视为最终变量。所以,它解释了上面的部分内容,但是为什么在父母中定义以及为什么它也应该在抽象类中是强制性的。
请帮忙。感谢。
答案 0 :(得分:1)
如果在接口中声明变量,它会自动变为public,static和final,并且您需要在接口本身的定义中为其赋值:
public interface myInterface {
int myInteger = 10; // public static final by implication.
}