【Java入門系列】static關鍵字

來源:互聯網
上載者:User

標籤:static   記憶體   就是   用途   必須   成員   靜態成員變數   對象   初始化   

static方法就是沒有this的方法。在static方法內部不能調用非靜態方法,反過來是可以的。而且可以在沒有建立任何對象的前提下,僅僅通過類本身來調用static方法。這實際上正是static方法的主要用途。《java編程思想》

靜態變數

static修飾的變數稱作靜態成員變數,也稱作類變數,類變數的生命週期和類相同,在整個應用執行期間有效。

靜態變數和普通變數的區別:靜態變數被所有的對象所共用,在記憶體中只有一個副本,僅當在類初次載入時會被初始化;非靜態變數是對象所擁有的,在建立對象的時候被初始化,存在多個副本,各個對象擁有的副本互不影響。

靜態方法

1、static修飾的方法稱作靜態方法,由於靜態方法不依賴於任何對象就可以進行訪問,因此對於靜態方法來說是沒有this的,因為它不依附於任何對象,既然都沒有對象,就談不上this了。2、靜態方法中不能訪問類的非靜態成員變數和非靜態成員方法,因為非靜態成員方法/變數都是必須依賴具體的對象才能夠被調用;但在非靜態成員方法中是可以訪問靜態成員方法/變數。3、如果想在不建立對象的情況下調用某個方法,就可以將這個方法設定為static。最常見的static方法就是main方法,至於為什麼main方法必須是static的,正是因為程式在執行main方法的時候沒有建立任何對象,因此只有通過類名來訪問。

【Java入門系列】static關鍵字

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.