【问题标题】:How to access parent class integer variable in child class? [duplicate]如何访问子类中的父类整数变量? [复制]
【发布时间】:2015-04-01 15:46:36
【问题描述】:

我正在尝试访问子类中的 int a= 10 变量但出现错误:

无法对非静态字段 FreshJuice.a 进行静态引用

以下是我的代码。

class FreshJuice {
    enum FreshJuiceSize{SMALL,MEDIUM,LARGE};
    FreshJuiceSize size;
    int a   =   10;
}

public class Index extends FreshJuice {

    enum programmingLanguage{PHP,Java,Dotnet,HTML};

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        System.out.println(FreshJuice.FreshJuiceSize.SMALL);
        System.out.println(programmingLanguage.PHP);
        System.out.println(FreshJuice.a); //getting error in this line
    }

}

我想在子类中直接访问 FreshJuice 类的 int 变量。我怎样才能实现这个目标?

【问题讨论】:

  • 你为什么要抽象和神秘?你有一个错误。 确切地告诉我们您遇到了什么错误。但是,在你这样做之前,请检查其他人是否没有同样的错误。 (提示:他们有。)
  • 你需要一个类的实例。它不是静态的。
  • 我收到错误无法对非静态字段 FreshJuice.a 进行静态引用

标签: java


【解决方案1】:

首先创建一个FreshJuice类的实例:

FreshJuice fj = new FreshJuice();

现在您可以访问变量a

但是如果您将变量设置为private int a=10; 那么您仍然无法访问它。这就是为什么最好使用 getter 和 setter 方法来访问这些私有变量的原因。

【讨论】:

    猜你喜欢
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-08
    • 1970-01-01
    • 2023-04-01
    • 2018-06-30
    相关资源
    最近更新 更多