歡迎來到培訓(xùn)無憂網(wǎng)!
咨詢熱線 400-001-5729
2022-11-30 10:20:27|已瀏覽:140次
Java靜態(tài)方法與靜態(tài)變量
Java靜態(tài)方法與靜態(tài)變量:在Java編程中使用static關(guān)鍵字可以定義靜態(tài)變量和靜態(tài)方法。其靜態(tài)變量不僅可以通過對(duì)象訪問,還可以直接通過類的名稱訪問。另一方面,實(shí)例變量只能通過一個(gè)對(duì)象來訪問,而不能使用類的名稱。
1. 靜態(tài)變量
成員變量分為實(shí)例變量和靜態(tài)變量。當(dāng)一個(gè)Java程序被執(zhí)行時(shí),類的字節(jié)碼文件被加載到內(nèi)存中,類中的靜態(tài)變量也被分配到相應(yīng)的內(nèi)存空間。
如果該類創(chuàng)建了對(duì)象,那么就會(huì)為不同對(duì)象的實(shí)例變量分配不同的內(nèi)存空間。然而,靜態(tài)變量不再被重新分配到內(nèi)存中,而是由所有對(duì)象共享。
也就是說,靜態(tài)變量是一個(gè)與類所創(chuàng)建的所有對(duì)象相關(guān)的變量,改變其中一個(gè)對(duì)象的這個(gè)靜態(tài)變量會(huì)影響其他對(duì)象的這個(gè)靜態(tài)變量。
靜態(tài)變量不僅可以通過對(duì)象訪問,還可以直接通過類的名稱訪問。另一方面,實(shí)例變量只能通過一個(gè)對(duì)象來訪問,而不能使用類的名稱。
2. 靜態(tài)方法
被聲明為靜態(tài)方法的方法需要在其返回類型前添加關(guān)鍵字static。即使類沒有實(shí)例化任何對(duì)象,靜態(tài)方法也可以執(zhí)行,而實(shí)例方法只能由與之相關(guān)的特定對(duì)象執(zhí)行,如果沒有對(duì)象存在,實(shí)例方法就不能執(zhí)行。
需要注意的是:
(1)實(shí)例方法能夠?qū)?shí)例變量和靜態(tài)變量進(jìn)行操作。
(2)靜態(tài)方法只能對(duì)靜態(tài)變量進(jìn)行操作。
(3)構(gòu)造方法是特殊的方法,不能被聲明為靜態(tài)方法。
(4)靜態(tài)變量一般用于保存對(duì)象的共用變量。
(5)靜態(tài)方法一般用于提供公共方法,以避免創(chuàng)建對(duì)象。
3.main()方法
main()方法必須是一個(gè)靜態(tài)方法,這樣就可以通過類名來引用它來啟動(dòng)程序,而不用實(shí)例化main()方法所在的類。
因?yàn)閙ain()方法是一個(gè)靜態(tài)方法,它可以訪問這個(gè)類的靜態(tài)變量和靜態(tài)方法,但不能訪問這個(gè)類的實(shí)例變量和實(shí)例方法。
注:尊重原創(chuàng)文章,轉(zhuǎn)載請(qǐng)注明出處和鏈接 http://m.elsolbar.com/news-id-72037.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實(shí)性請(qǐng)自行核實(shí)或聯(lián)系我們,了解更多相關(guān)資訊請(qǐng)關(guān)注java培訓(xùn)頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費(fèi)申請(qǐng)?jiān)囌n。關(guān)注官方微信了解更多:150 3333 6050