2013-05-21 64 views
3

我了解抽象类可能包含抽象和具体方法(即与主体实现)。我的问题是:子类可以从抽象超类继承/覆盖具体方法。其次,他们是否必须像继承抽象方法一样继承具体方法?抽象类中的具体方法

+2

如果这些具体的方法没有标记为“final”,那么是的,它们可以被覆盖。 –

+1

为什么downvotes? – Tips48

回答

7

可以子类都继承/从抽象 超

覆盖具体方法,如果它们不final,是的,他们可以被覆盖。

其次他们是否必须继承具体方法 他们继承抽象方法?

不,他们只需要继承抽象的,否则抽象方法就没有意义了。

2

子类可以从抽象超类继承/重写具体方法吗?

子类将继承所有被标记publicprotected的方法中,如果子类是在不同的包比父类。如果子类在同一个包中,则继承的所有方法,但private方法除外。

子类必须覆盖/实现抽象方法,如果未标记为final,可以覆盖/实现具体方法。

他们是否必须像继承抽象方法一样继承具体方法?

号他们不必实施的具体方法。但是,他们可以用覆盖的具体方法,除非他们没有标记为final

4

具体方法的意思是,方法有完整的定义。但是它可以在继承类中被覆盖,如果我们使这个方法成为“final”,那么它不能被覆盖。声明方法或类“final”意味着它的实现已经完成。忽视抽象方法是强制性的。