java重寫(xiě)父類(lèi)方法 JAVA子類(lèi)重寫(xiě)繼承的方法時(shí),可以降低方法的訪問(wèn)權(quán)限嗎?
JAVA子類(lèi)重寫(xiě)繼承的方法時(shí),可以降低方法的訪問(wèn)權(quán)限嗎?Java中有四種訪問(wèn)權(quán)限:Private<default<protected<public。如果子級(jí)重寫(xiě)父級(jí)的方法,則該方法的權(quán)限默
JAVA子類(lèi)重寫(xiě)繼承的方法時(shí),可以降低方法的訪問(wèn)權(quán)限嗎?
Java中有四種訪問(wèn)權(quán)限:Private<default<protected<public。如果子級(jí)重寫(xiě)父級(jí)的方法,則該方法的權(quán)限默認(rèn)與父級(jí)相同,但也可以更改。例如,如果父級(jí)受保護(hù),則重寫(xiě)時(shí)可以將其更改為public,但如果父級(jí)是public,則重寫(xiě)只能是public
A.重寫(xiě)規(guī)則之一:重寫(xiě)方法的訪問(wèn)級(jí)別不能比重寫(xiě)方法的訪問(wèn)級(jí)別更嚴(yán)格。(但它可以更廣泛。例如,父類(lèi)方法是package access,子類(lèi)方法是public access。)B.重寫(xiě)規(guī)則2:參數(shù)列表必須與要重寫(xiě)的方法的參數(shù)列表相同。重寫(xiě)有一個(gè)孿生兄弟叫做重載,稍后會(huì)出現(xiàn)。如果子類(lèi)方法的參數(shù)與父類(lèi)的相應(yīng)方法不同,則是錯(cuò)誤的。這是過(guò)載,而不是重寫(xiě)。重寫(xiě)規(guī)則3:返回類(lèi)型必須與重寫(xiě)方法的返回類(lèi)型相同。重寫(xiě)規(guī)則4:重寫(xiě)方法不能拋出新的異常或比重寫(xiě)方法聲明的檢查異常更廣泛的檢查異常。但是你可以拋出更少的,更有限的,或者沒(méi)有例外。重寫(xiě)規(guī)則5:不能重寫(xiě)標(biāo)記為final的方法。重寫(xiě)規(guī)則6:如果一個(gè)方法不能被繼承,它就不能被重寫(xiě)。