1. 程式人生 > >方法static和new的區別

方法static和new的區別

(一)靜態變數:執行緒非安全

1、靜態變數:使用static關鍵字定義的變數。static可以修飾變數和方法,也有static靜態程式碼塊。被static修飾的成員變數和成員方法獨立於該類的任何物件。也就是說,它不依賴類特定的例項,被類的所有例項共享。只要這個類被載入,Java虛擬機器就能根據類名在執行時資料區的方法區內定找到他們。因此,static物件可以在它的任何物件建立之前訪問,無需引用任何物件。

用public修飾的static成員變數和成員方法本質是全域性變數和全域性方法,當宣告它的類的物件時,不生成static變數的副本,而是類的所有例項共享同一個static變數。