java调用静态方法原理_传智播客:Java学科08static关键字的概述和使用格式以及静态原理...
本文內(nèi)容:
static關(guān)鍵字本文輸出內(nèi)容:
能夠理解static的關(guān)鍵字能夠?qū)懗鲮o態(tài)代碼塊的格式二、static關(guān)鍵字
概述關(guān)于static關(guān)鍵字的使用,它可以用來修飾的成員變量和成員方法,被修飾的成員是屬于類的,并非單單的是屬于其中一個(gè)對(duì)象的。也就是既然屬于類,就可以不靠創(chuàng)建對(duì)象來調(diào)用了。定義和使用的格式類變量當(dāng)static修飾成員變量的時(shí)候,這個(gè)變量我們稱為類變量。這個(gè)類的每一個(gè)對(duì)象都有共享的同一個(gè)類變量的值。任何對(duì)象都可以改這個(gè)類變量的值。但也可以在不創(chuàng)建這個(gè)類的對(duì)象的情況下對(duì)類變量進(jìn)行操作。類變量:使用static關(guān)鍵修飾的成員變量定義的格式如下:static 數(shù)據(jù)類型 變量名;
舉例:
static int numberID;
比如說,基礎(chǔ)班新開班學(xué)院報(bào)道,現(xiàn)在想為每一個(gè)新來報(bào)道的同學(xué)邊上學(xué)號(hào),從第一名同學(xué)開始,sid為1,接下來以此類推;學(xué)號(hào)必須是唯一 的,連續(xù)的,并且與班里面人數(shù)相符的,這樣以便知道,要分配給下一個(gè)同學(xué)的學(xué)號(hào)是多少,這樣我們就需要一個(gè)變量,與單獨(dú)的每一個(gè)學(xué)生對(duì)象無關(guān)。是與整個(gè)班級(jí)的學(xué)生數(shù)有關(guān);
所以我們可以這樣定義一個(gè)靜態(tài)變量numberOfStudent,代碼如下圖所示:
靜態(tài)方法
當(dāng)static修飾成員方法的時(shí)候,這個(gè)方法我們成為類方法。靜態(tài)方法在聲明中有static,建議使用類名來調(diào)用。而不需要?jiǎng)?chuàng)建類的對(duì)象,調(diào)用方式是非常簡單的。
類方法:使用static關(guān)鍵字修飾的成員方法習(xí)慣成為靜態(tài)方法
定義格式的話如下:
靜態(tài)方法調(diào)用的注意事項(xiàng)有:
靜態(tài)方法可以直接訪問變量和靜態(tài)的方法靜態(tài)方法不可以直接訪問普通成員變量或者是成員方法。相反,成員方法可以直接來訪問類的變量或者是靜態(tài)方法靜態(tài)方法當(dāng)中不能使用this這個(gè)關(guān)鍵字注意:靜態(tài)方法只能訪問靜態(tài)成員
調(diào)用格式:
被static修飾的成員可以并且建議通過類名直接訪問。雖然也可以通過對(duì)象名訪問靜態(tài)成員,愿意是多個(gè)對(duì)象都屬于一個(gè)類,可以共享一個(gè)靜態(tài)成員,但是我們不建議這樣,會(huì)出現(xiàn)警告的提示信息。
格式:
調(diào)用演示如下所示:
3.靜態(tài)原理圖解:
static修飾內(nèi)容:
是隨著一個(gè)類加載從而加載的,并且只能加載一次;
存儲(chǔ)于一個(gè)固定的內(nèi)存區(qū)域(這里指的是靜態(tài)區(qū))所以,可以直接被類名調(diào)用
它是優(yōu)于對(duì)象存在的,所以可以被所有的對(duì)象共享的
4.靜態(tài)代碼塊
這是定義在成員的位置,使用static修飾的代碼快{ }
位置:類中方法外
執(zhí)行:隨著類的加載而執(zhí)行的并且執(zhí)行一次,優(yōu)先于main方法和構(gòu)造方法執(zhí)行的
下面看格式:
作用:給類變量進(jìn)行初始化的賦值。用法演示,代碼如下:
注意:static關(guān)鍵字可以修飾變量、方法以及代碼塊。在使用的過程中,它的主要目的還是想在不創(chuàng)建對(duì)象的情況之下,去調(diào)用方法。我們接下來的文章會(huì)介紹兩個(gè)工具類,來實(shí)現(xiàn)static方法之便利。
總結(jié)
以上是生活随笔為你收集整理的java调用静态方法原理_传智播客:Java学科08static关键字的概述和使用格式以及静态原理...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rsa java ao_RSA加解密工具
- 下一篇: mysql truncate drop_