Java入門到精通——基礎篇之static關鍵字,入門到精通static

來源:互聯網
上載者:User

Java入門到精通——基礎篇之static關鍵字,入門到精通static

一、概述
       static 關鍵字是聲明靜態變數,靜態方法用的。static的含義是屬於類且不屬於類對象的變數和函數。
二、static的產生。
        在建立對象的時候除非用new建立那個類的對象,否則實際上並沒有獲得任何對象只有當執行new來建立對象時資料存放區空間才被分配,其方法才供外界調用。但是有兩種情況上述方法時無法解決的
第一種只想為某特定域分配單一儲存空間而不去考慮究竟要建立多少對象,甚至不需要建立任何對象。
第二種希望某個方法(變數)不予包含它的類的人很對象關聯在一起。也就是沒有建立對象,也能調用這個方法。
        為瞭解決上面的兩個問題static關鍵字就誕生了。
        當一個事物是static的時候就意味著這個域或方法不會與包含它的那個類的任何對象執行個體關聯在一起。即使從未建立某個類的任何對象,也可以調用其Static方法或其static域。

三、例子。

TestStatic.java

public class TestStatic {public static int i=33;}

StaticMain.java

public class StaticMain {/** * @param args */public static void main(String[] args) {System.out.println("TestStatic.i="+TestStatic.i);TestStatic s1=new TestStatic();TestStatic s2=new TestStatic();System.out.println("s1.i="+s1.i);System.out.println("s2.i="+s2.i);s2.i=133;System.out.println("s1.i="+s1.i);System.out.println("s2.i="+s2.i);}}



四、總結。

        在例子我們發現第一個列印出來i的值就是實現了希望某個變數不予包含它的類的人很對象關聯在一起。也就是沒有建立對象,也能調用這個方法。下面的則是實現了只想為某特定域分配單一儲存空間而不去考慮究竟要建立多少對象,甚至不需要建立任何對象。static關鍵字就是為我們解決了這兩個問題。

        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.