【问题标题】:declaring variables in abstract parent class or interface在抽象父类或接口中声明变量
【发布时间】:2013-12-30 12:54:10
【问题描述】:

当我在抽象类或接口的帮助下运行一个简单的代码时,在编译 main 方法时,它要求我在父抽象类(或接口)中强制定义一个实例变量,即使我可能已经定义甚至使用子类中的构造函数对其进行初始化。最重要的是,如果我在父类(或接口)中定义它,它只会修复变量值,即它强制我定义一个变量,然后将其视为“静态”“最终”。我正在使用 eclipse 编译它。如果有的话,我会犯什么错误。

我在其他论坛上读到,如果在接口中定义了一个变量,它会自动被视为最终变量。所以,它解释了上面的一部分,但是为什么必须在父类中定义以及为什么它也应该在抽象类中。

请帮忙。谢谢。

【问题讨论】:

  • 没有办法让子类定义一个字段/变量,也没有这样的错误说你必须在子类中定义一个变量,或者实现一个接口的类。

标签: java variables interface abstract-class


【解决方案1】:

如果你在接口中声明一个变量,它会自动变成public、static和final,你需要在接口本身的定义中给它赋值:

public interface myInterface {
    int myInteger = 10; // public static final by implication.
}

【讨论】:

    猜你喜欢
    • 2013-07-30
    • 2016-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多