一:靜態方法
其實在我們第一天學習java的時候就使用了靜態方法,主方法的就是一個靜態方法,靜態方法和靜態屬性一樣使用static修飾。
DEMO:定義靜態方法
發現了可以使用“類名.方法名()”的方式訪問靜態方法,但是不能使用這種方式訪問普通方法,所以我們說靜態方法又叫做類方法,普通的方法只能先實例化對象之后使用“對象名.方法名()”的方式訪問,所以我們把普通方法又叫做實例方法(因為它依賴於實例對象存在)。
DEMO:觀察代碼
不能從靜態上下文環境中使用this關鍵字(無法從一個靜態方法中發出this 的引用),不能在靜態方法中使用this關鍵字。
DEMO:繼續觀察代碼
不能從一個靜態方法中直接調用一個非靜態方法,因為非靜態方法是依賴於實例對象的,但是靜態方法不依賴於實例,所以調用靜態方法的時候很可能實例對象還沒出現。
DEMO:繼續觀察
不能從靜態方法中發出對非靜態屬性的訪問。
總結:
1、靜態方法就是使用static 修飾的方法
2、靜態方法可以使用“類名.方法名()”調用,所以又叫做類方法
3、靜態方法中不能直接調用非靜態方法(實例方法)
4、靜態方法中不能使用this關鍵字
5、靜態方法中不能訪問非靜態屬性(實例變量)
有完整的Java初級,高級對應的學習路線和資料!專注於java開發。分享java基礎、原理性知識、JavaWeb實戰、spring全家桶、設計模式、分布式及面試資料、開源項目,助力開發者成長!
歡迎關注微信公眾號:碼邦主