天天看點

static這個關鍵字什麼意思?java中靜态方法為什麼不能重寫?

“static”關鍵字是什麼意思?

static這個關鍵字表明目前這個這個方法或者屬性是屬于類的。在類加載的時候就随着加載進記憶體、所有的對象都共享同一份的靜态變量或者靜态方法。static關鍵字修飾的屬性和方法,可以直接通過    類名.屬性名(方法名) 進行通路。

java中靜态方法為什麼不能重寫?

首先宏觀的說:是因為非靜态的方法是基于運作時動态綁定的,而static方法則是編譯時靜态綁定的。

細緻點說:靜态方法是類在加載到記憶體中的方法,在這呢各個運作過程中爆出不變,因而不能重寫。但是非靜态方法是在對象執行個體化的時候才單獨申請記憶體空間,為每一個執行個體配置設定獨立的運作記憶體,因而可以重寫。