欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

Java里static作用有哪些?

夏志豪2年前14瀏覽0評論

謝邀~

和大家分享一下我對Java中static關鍵字的理解(趕時間的同學直接看加粗的字兒)。

什么是static

static作為Java一個重要的關鍵字,主要的作用是:可以在沒有創建對象的情況下來進行訪問或調用(變量、方法)。

static關鍵字可以減少成員變量和方法的多次創建,當方法或者變量被static修飾之后,就不需要依賴于對象進行訪問了,只要類被加載,那么就可以通過類名進行訪問,如:類名().變量名。

static修飾變量

有人喜歡把static修飾的變量稱作全局變量,但實際上,Java中不存在全局變量這個概念(在別的文章里,有人說我喜歡咬文爵字,但我覺得有些概念還是說清楚比較好)。

  • 全局變量應該拿著變量的名字就能使用的,但是Java中都是:類名().變量名;這樣使用的;

  • 當JVM加載一個類的時候,如果這個類存在static修飾的變量或方法,則會為這些變量或方法在內存中固定的位置開辟一個固定大小的區域,因為這些“固定”,所以看起來是全局的。

static修飾方法

被static修飾的方法,我們一般稱作靜態方法。

  • 類名().方法();也就避免了new對象資源消耗;

  • 靜態方法不依賴對象就能訪問,因此對于靜態方法是沒有this的;

  • 靜態方法中不能訪問非靜態變量和非靜態方法。

靜態代碼塊

如果一些代碼需要在項目啟動的時候就執行,那么就必須使用靜態代碼塊了。

  • 靜態代碼塊會隨著類加載而加載;

  • 如果有多個靜態代碼塊,那么會按前后順序加載;

  • 一個靜態代碼塊,只會執行一次;

  • 靜態代碼塊不能存在于任何方法體中。

我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。