假设我们有类A
,B
和C
这样:
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'?
答案 0 :(得分:1)
根据定义,你需要一个实例,所以这很好用
C cVar = new C();
System.out.printf("%d %d\n", cVar.a, cVar.b);
类C
继承实例变量a
和b
,只要它们未在超类中声明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类之外访问它而变量不是静态的,那根本不可能。