如何在没有对象的情况下访问父类的成员?

时间:2017-02-10 17:26:39

标签: java

假设我们有类ABC这样:

class A {
     int a; //let variable a
}

class B extends A{
     int b; //let variable b
}

class C extends B{
     int c; //let variable c
}

如何在课程a中的课程A中访问C而没有课程对象' A'?

3 个答案:

答案 0 :(得分:1)

根据定义,你需要一个实例,所以这很好用

C cVar = new C();
System.out.printf("%d %d\n", cVar.a, cVar.b);

C继承实例变量ab,只要它们未在超类中声明private即可。如果它们是private,则超类必须提供getter方法,如果它想要公开

答案 1 :(得分:0)

您总是可以将变量设为静态。 例如:

template <class A>
void foo() {
    A x;
}
void bar() {
    foo<std::vector<int>>();
}

然后你可以做System.out.println(C.a)

答案 2 :(得分:0)

你可以在C级直接使用它。你不需要A级的对象。 如果你想在C类之外访问它而变量不是静态的,那根本不可能。