包含在抽象类中的方法可以被认为是多态的吗?

时间:2014-06-25 17:39:47

标签: java polymorphism abstract

查看以下代码时,每个类中的每个方法都被视为多态。

class A {
void foo() {}
}

class B extends A {
void foo() {}
}

class C extends A {
void foo() {}
}

在以下代码片段中是否仍然如此,其中A类是抽象的?

abstract class A {
void foo() {}
}

class B extends A {
void foo() {}
}

class C extends A {
void foo() {}
}

我正在与一个java认证考试的研究小组合作,我认为它不会。因为你仍然可以访问A中的foo(),如果你要扩展D类但不定义foo(),然后尝试访问它。在这种情况下,它不会是多态的,因为它不会有任何变化。

abstract class A {
void foo() {}
}

class D extends A {
}

0 个答案:

没有答案