修飾符匯總:
一:public protected default private
修飾類,修飾方法,修飾屬性,修飾代碼塊。
類:
頂級類只能用public 修飾,頂級類不能使用private 和protected 修飾。
外部類可以被public修飾或者默認(rèn)不寫,不能用private和protected。
內(nèi)部類可為靜態(tài),可用protected和private修飾。
方法:
通常方法可以被四個(gè)訪問修飾符修飾,構(gòu)造方法也可以被四個(gè)訪問修飾符修飾。
抽象類中的抽象方法不能被private修飾,可以被其他三個(gè)修飾。
而接口中的方法只能被public修飾(默認(rèn)也是public)。
屬性:
屬性可以被四個(gè)修飾符修飾,接口中的屬性只能被public修飾(默認(rèn)也是public)。
代碼塊:
代碼塊不能被任何修飾符修飾(因?yàn)榇a塊里面是屬性還是方法,這個(gè)屬性和方法都有自己的修飾符)。
構(gòu)造代碼塊的作用:可以初始化非靜態(tài)屬性,構(gòu)造代碼塊優(yōu)先于構(gòu)造函數(shù)執(zhí)行,可以放在構(gòu)造函數(shù)中。
靜態(tài)代碼塊的作用:可以初始化靜態(tài)屬性,類加載時(shí)加載,不可以放在構(gòu)造函數(shù)中。
二:final:
修飾類:最終類,最終類不能被繼承。最終類通常完成一定標(biāo)準(zhǔn)功能的類,例如Java庫中的數(shù)學(xué)類Math等。
修飾方法:用final修飾的方法不能被繼承,不能被重寫(例如Object中的wait()),但是可以重載。
常量:定義局部常量用final,定義全局常量用static final (或者final static)。
三:static:
修飾類:可以修飾內(nèi)部類
修飾屬性:static可以修飾任何屬性。
修飾方法:不能修飾抽象方法,不能修飾構(gòu)造方法。
修飾代碼塊:被修飾的代碼塊叫靜態(tài)代碼塊
四:abstract
修飾類(抽象類):抽象類不能被實(shí)例化。抽象類就是用來被繼承的。
修飾方法(抽象方法):能被修飾的方法叫做抽象方法,只有方法的聲明,沒有方法的實(shí)現(xiàn),以分號結(jié)束。
不能修飾:不能修飾屬性、私有方法、構(gòu)造器、靜態(tài)方法、final 方法。
abstract不可以和哪些關(guān)鍵字共存?
final:如果方法被抽象,就需要被覆蓋,final修飾不能被覆蓋。
private:如果函數(shù)被私有了,子類無法直接訪問,無法覆蓋
static:類方法,直接調(diào)用抽象方法沒有意義。
以上這篇Java中常用修飾符的使用方法匯總就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選