java基本數(shù)據(jù)類型 所有抽象方法的類必須聲明為抽象類嗎?
所有抽象方法的類必須聲明為抽象類嗎?抽象類必須有抽象方法和非抽象方法。它可以有方法的具體實(shí)現(xiàn),并從抽象父類的子類繼承。若子類并沒有在抽象父類中實(shí)現(xiàn)抽象方法,那個(gè)么子類也必須聲明為抽象的。也就是說,只要
所有抽象方法的類必須聲明為抽象類嗎?
抽象類必須有抽象方法和非抽象方法。它可以有方法的具體實(shí)現(xiàn),并從抽象父類的子類繼承。若子類并沒有在抽象父類中實(shí)現(xiàn)抽象方法,那個(gè)么子類也必須聲明為抽象的。也就是說,只要類中有抽象方法,那么類就一定是抽象類,但抽象類中的方法并不是所有的都是抽象方法,而是至少有一個(gè)是抽象方法
一個(gè)包含抽象方法的類叫做抽象類,但這并不意味著一個(gè)類中只能存在抽象方法抽象類。與普通類一樣,它也可以有成員變量和普通成員方法。注意,抽象類和普通類之間有三個(gè)主要區(qū)別:
1)抽象方法必須是公共的或受保護(hù)的(因?yàn)槿绻撬接械?,它就不能被子類繼承,子類也不能實(shí)現(xiàn)這個(gè)方法)。默認(rèn)情況下,它是公共的。
2)抽象類不能用于創(chuàng)建對(duì)象;
3)如果類繼承自抽象類,則子類必須實(shí)現(xiàn)父類的抽象方法。如果子類沒有實(shí)現(xiàn)父類的抽象方法,那么子類也必須定義為抽象類。