Java入门到精通——基础篇之static关键字
生活随笔
收集整理的這篇文章主要介紹了
Java入门到精通——基础篇之static关键字
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、概述
? ? ? ?static 關(guān)鍵字是聲明靜態(tài)變量,靜態(tài)方法用的。static的含義是屬于類且不屬于類對(duì)象的變量和函數(shù)。
二、static的產(chǎn)生。
? ? ? ? 在創(chuàng)建對(duì)象的時(shí)候除非用new創(chuàng)建那個(gè)類的對(duì)象,否則實(shí)際上并沒(méi)有獲得任何對(duì)象只有當(dāng)執(zhí)行new來(lái)創(chuàng)建對(duì)象時(shí)數(shù)據(jù)存儲(chǔ)空間才被分配,其方法才供外界調(diào)用。但是有兩種情況上述方法時(shí)無(wú)法解決的
第一種只想為某特定域分配單一存儲(chǔ)空間而不去考慮究竟要?jiǎng)?chuàng)建多少對(duì)象,甚至不需要?jiǎng)?chuàng)建任何對(duì)象。
第二種希望某個(gè)方法(變量)不予包含它的類的人很對(duì)象關(guān)聯(lián)在一起。也就是沒(méi)有創(chuàng)建對(duì)象,也能調(diào)用這個(gè)方法。
? ? ? ? 為了解決上面的兩個(gè)問(wèn)題static關(guān)鍵字就誕生了。
? ? ? ? 當(dāng)一個(gè)事物是static的時(shí)候就意味著這個(gè)域或方法不會(huì)與包含它的那個(gè)類的任何對(duì)象實(shí)例關(guān)聯(lián)在一起。即使從未創(chuàng)建某個(gè)類的任何對(duì)象,也可以調(diào)用其Static方法或其static域。
? ? ? ?static 關(guān)鍵字是聲明靜態(tài)變量,靜態(tài)方法用的。static的含義是屬于類且不屬于類對(duì)象的變量和函數(shù)。
二、static的產(chǎn)生。
? ? ? ? 在創(chuàng)建對(duì)象的時(shí)候除非用new創(chuàng)建那個(gè)類的對(duì)象,否則實(shí)際上并沒(méi)有獲得任何對(duì)象只有當(dāng)執(zhí)行new來(lái)創(chuàng)建對(duì)象時(shí)數(shù)據(jù)存儲(chǔ)空間才被分配,其方法才供外界調(diào)用。但是有兩種情況上述方法時(shí)無(wú)法解決的
第一種只想為某特定域分配單一存儲(chǔ)空間而不去考慮究竟要?jiǎng)?chuàng)建多少對(duì)象,甚至不需要?jiǎng)?chuàng)建任何對(duì)象。
第二種希望某個(gè)方法(變量)不予包含它的類的人很對(duì)象關(guān)聯(lián)在一起。也就是沒(méi)有創(chuàng)建對(duì)象,也能調(diào)用這個(gè)方法。
? ? ? ? 為了解決上面的兩個(gè)問(wèn)題static關(guān)鍵字就誕生了。
? ? ? ? 當(dāng)一個(gè)事物是static的時(shí)候就意味著這個(gè)域或方法不會(huì)與包含它的那個(gè)類的任何對(duì)象實(shí)例關(guān)聯(lián)在一起。即使從未創(chuàng)建某個(gè)類的任何對(duì)象,也可以調(diào)用其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);}}
效果圖:
四、總結(jié)。
? ? ? ? 在例子我們發(fā)現(xiàn)第一個(gè)打印出來(lái)i的值就是實(shí)現(xiàn)了希望某個(gè)變量不予包含它的類的人很對(duì)象關(guān)聯(lián)在一起。也就是沒(méi)有創(chuàng)建對(duì)象,也能調(diào)用這個(gè)方法。下面的則是實(shí)現(xiàn)了只想為某特定域分配單一存儲(chǔ)空間而不去考慮究竟要?jiǎng)?chuàng)建多少對(duì)象,甚至不需要?jiǎng)?chuàng)建任何對(duì)象。static關(guān)鍵字就是為我們解決了這兩個(gè)問(wèn)題。
? ? ? ? static關(guān)鍵字還是需要慎重使用以免給程序帶來(lái)不必要的麻煩。
轉(zhuǎn)載于:https://www.cnblogs.com/iplus/p/4490362.html
總結(jié)
以上是生活随笔為你收集整理的Java入门到精通——基础篇之static关键字的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 服务器能用usb pe安装win7系统,
- 下一篇: 浅析Java内存模型