2014-12-04 91 views
2

有疑問:在java中一個類可以同時抽象和具體嗎?

在Java中,一個類可以同時抽象和具體嗎?即如果抽象類沒有抽象方法,那麼它可以被稱爲具體類。我們還可以說任何沒有抽象方法的類都被稱爲具體類嗎?

+1

抽象和具體是反義詞,所以他們不應該被允許是相同的 – 2014-12-04 14:26:19

+2

簡短的回答:沒有。即使抽象類沒有抽象方法,也不能實例化。這是主要的區別。 – 2014-12-04 14:26:38

回答

5

的主要區別在於the documentation它指出:

抽象類是聲明爲abstract,它可能會或可能不會包含抽象方法的類。抽象類不能被實例化,但它們可以被分類。

實例化是這裏的關鍵。

+0

但是我的疑問是關於一個沒有抽象方法的抽象類是否被稱爲具體類? – Singularity 2014-12-04 14:26:10

+2

無法實例化Abstract類,因此不是具體的 – gtgaxiola 2014-12-04 14:27:20

+0

@ user2580086不,沒有抽象方法的抽象類不是具體的類。 – Jesper 2014-12-04 14:30:12

3

答案是「否」和「否」。抽象類只是那些已經用關鍵字abstract聲明的類,不管它們是否包含抽象方法。非抽象類不允許包含抽象方法。

相關問題