static 修飾方法


              static 修飾方法

1、static修飾的方法被稱之為靜態方法也叫作類方法,加static的方法,可以通過類名直接訪問,也可以通過對象名訪問,而不加static只能通過對象名訪問,加了static的方法,不能再內部寫this,因為直接用類名點方法的時候,沒有當前對象

2、加了static的方法,不能再方法內部訪問非static的屬性和行為;

原因:1、在靜態方法的內部無法確認非static的內容屬於哪個對象,它是通過類名調用,這時沒有對象----這就相當於工具類

2、static修飾的方法,在類加載的時候是被首先加載的,然后加載非static內容,所以加載static時 是不知道非static內容的

總結:只有調用的時候無需考慮對象時,才定義為static---工具類的工具方法,可以被定義為static方法

工具類:沒有產生對象的必要,只要實現某個功能即可,哪個對象完成的都沒有影響,比如:分頁,轉換時間,連接數據庫等

工具方法:該方法在完成功能的時候,不會對對象的數據產生任何影響

 

凡是用static修飾的都有量大共性:

1、該內容與對象無關,只與類有關;

2、該內容總會在類加載器有特殊操作

注:static不能用來修飾構造方法,因為static修飾的是與對象無關的內容,而構造確實生成對象的五大方法之一

 

初始化塊--------{

在這個塊中可以書寫任何語句

}

1、這是一個沒有方法名、參數列表、返回類型的方法體

2、在這個塊中可以書寫任何語句,它在產生對象的時候自動被調用,它是用來美new出一個對象,就用來執行初始化的,又被稱之為實例初始化塊,這是與構造相重疊的,寫在初始化塊中的代碼都可以寫在構造方法中;但是他的執行順序是先執行初始化塊在執行構造

 

 

Static{

}----靜態初始化塊

1、與對象無關,滿足static的特征,一個類只執行一次;

2、執行的時機是加載的時候

總結:可以再靜態初始化塊中書寫一些運行前的准備工作,只運行一次,沒有別的可以替代,可以節約運行時間和運行速度;

當調用者產生一個對象的時候

1、在堆中划分對象的空間;

2、在空間划分屬性

3、執行實例初始化塊

4、執行屬性的賦值;

5、執行構造方法當中我們書寫好的代碼;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM