一、原始碼執行時的先后順序:
- 父類的靜態屬性和靜態塊(按照宣告順序)
- 本類的靜態屬性和靜態塊(按照宣告順序)
- main方法
- 父類的成員屬性和成員塊(按照宣告順序)
- 父類構造器
- 本類成員屬性和塊(按照宣告順序)
- 本類構造器
二、原始碼執行需要注意:
- 在類加載的時候,靜態方法也已經加載了,但必須要通過類名或者物件名才能訪問(相比于靜態代碼塊,靜態代碼塊是主動運行的,靜態方法是被動運行的)
- 當靜態加載中遇到需要加載非靜態的情況: 先加載非靜態再加載靜態(因為非靜態可以訪問靜態,而靜態不能訪問非靜態)
- 靜態代碼塊不能存在在任何方法體中
- 靜態代碼塊在類加載的時候就要運行
- 靜態代碼塊不能訪問成員屬性
- 靜態方法,實體方法只有在呼叫的時候才會去執行
- 成員屬性只能通過物件來呼叫,不能放在靜態代碼塊中
- 成員方法是通過加載類,然后new出實體化物件;通過物件運行這個方法
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/458276.html
標籤:其他
