糯米文學吧

位置:首頁 > 計算機 > java語言

Java語言static關鍵字

java語言1.83W

導語:Java語言static的靜態屬性是用來修飾成員變量和成員函數,下面讓我們一起了解一下這種關鍵詞吧!

Java語言static關鍵字

  1、static關鍵字:

  (1)靜態的意思,用來修飾成員變量和成員函數

  (2)靜態的特點:

隨着類的加載而加載

優先於對象存在

對所有對象共享

可以被類名直接調用

  (3)靜態的注意事項

A:靜態方法只能訪問靜態成員

為什麼:因為靜態的內容是隨着類的加載而加載,它是先進內存的。

B:靜態方法中不能使用this,super關鍵字

C:主方法是靜態的

public static void main(String[] args)

public:公共的意思,是最大權限修飾符。

static:由於jvm調用main方法的時候,沒有創建對象。

只能通過類名調用。所以,main必須用static修飾。

void:由於main方法是被jvm調用,不需要返回值。用void修飾。

main:main是主要的意思,所以jvm採用了這個名字。是程序的入口。

String[]:字符串數組

args:數組名

在運行的時候,通過java命令給args數組賦值。

格式:java MainTest hello world itcast

  (4)靜態變量和成員變量的區別

A:調用方式

靜態變量也稱為類變量,可以直接通過類名調用。也可以通過對象名調用。

這個變量屬於類。

成員變量也稱為實例變量,只能通過對象名調用。這個變量屬於對象。

B:存儲位置

靜態變量存儲在方法區長中的靜態區。

成員變量存儲在堆內存。

C:生命週期

靜態變量隨着類的加載而存在,隨着類的消失而消失。生命週期長。

成員變量隨着對象的.創建而存在,隨着對象的消失而消失。

D:與對象的相關性

靜態變量是所有對象共享的數據。

成員變量是每個對象所特有的數據。

  (5)靜態的優點和弊端

優點:

對對象的共享數據進行單獨空間的存儲,節省內存,沒有必要每個對象都存儲一份

可直接被類名調用

弊端:

生命週期過長,隨着類的消失而消失

訪問出現權限,即靜態雖好但只能訪問靜態

  (6)什麼使用使用靜態呢?

A:當所有對象共享某個數據的時候,就把這個成員變量定義為靜態修飾的。

B:當某個方法沒有訪問該類中的非靜態成員,就可以把這個方法定義為靜態修飾。

靜態的生命週期比較長,所以一般不推薦使用。

  (7)靜態代碼塊

A:它只執行一次,它比main還先執行。

B:執行順序

靜態代碼塊--構造代碼塊--構造方法