繼承重寫(xiě)父類(lèi)方法 子類(lèi)繼承父類(lèi)要重寫(xiě)父類(lèi)的,抽象方法嗎?
子類(lèi)繼承父類(lèi)要重寫(xiě)父類(lèi)的,抽象方法嗎?不一定。1. 普通類(lèi)繼承不一定重寫(xiě)父類(lèi)方法。2抽象類(lèi)繼承。如果子類(lèi)也是抽象類(lèi),則不必重寫(xiě)父類(lèi)方法。如果子類(lèi)不是抽象類(lèi),則子類(lèi)必須在父類(lèi)中實(shí)現(xiàn)抽象方法。三。接口類(lèi)繼
子類(lèi)繼承父類(lèi)要重寫(xiě)父類(lèi)的,抽象方法嗎?
不一定。
1. 普通類(lèi)繼承不一定重寫(xiě)父類(lèi)方法。2抽象類(lèi)繼承。如果子類(lèi)也是抽象類(lèi),則不必重寫(xiě)父類(lèi)方法。如果子類(lèi)不是抽象類(lèi),則子類(lèi)必須在父類(lèi)中實(shí)現(xiàn)抽象方法。三。接口類(lèi)繼承。如果是子接口,則可以擴(kuò)展父接口的方法;如果是子抽象類(lèi),則可以部分或全部實(shí)現(xiàn)父接口的方法;如果不是抽象類(lèi),則需要子類(lèi)實(shí)現(xiàn)父接口中定義的所有方法。
JAVA問(wèn)題,父類(lèi)為抽象類(lèi),子類(lèi)繼承父類(lèi)后,為什么還要把抽象類(lèi)的方法重寫(xiě)?那為什么不直接創(chuàng)建個(gè)方法?
抽象類(lèi)可以沒(méi)有抽象方法,也可以都是抽象方法。如果子類(lèi)繼承的父類(lèi)是抽象類(lèi),則子類(lèi)必須重寫(xiě)要實(shí)例化的父類(lèi)中的所有(all)抽象方法,即創(chuàng)建對(duì)象。否則,子類(lèi)也將是抽象類(lèi),抽象類(lèi)不能實(shí)例化(考試中經(jīng)常出現(xiàn)多項(xiàng)選擇題)
必須實(shí)現(xiàn)繼承的抽象方法?
包含抽象方法的類(lèi)稱(chēng)為抽象類(lèi),但并不意味著抽象類(lèi)中只能有抽象方法。與普通類(lèi)一樣,它也可以有成員變量和普通成員方法。注意,抽象類(lèi)和普通類(lèi)之間有三個(gè)主要區(qū)別:
1)抽象方法必須是公共的或受保護(hù)的(因?yàn)槿绻撬接械?,它就不能被子?lèi)繼承,子類(lèi)也不能實(shí)現(xiàn)這個(gè)方法)。默認(rèn)情況下,它是公共的。
2)抽象類(lèi)不能用于創(chuàng)建對(duì)象;
3)如果類(lèi)繼承自抽象類(lèi),則子類(lèi)必須實(shí)現(xiàn)父類(lèi)的抽象方法。如果子類(lèi)沒(méi)有實(shí)現(xiàn)父類(lèi)的抽象方法,那么子類(lèi)也必須定義為抽象類(lèi)。