<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          一篇文章帶你了解Java中的static關(guān)鍵字和靜態(tài)變量、靜態(tài)方法

          共 3098字,需瀏覽 7分鐘

           ·

          2020-12-14 12:04

          點(diǎn)擊上方“Java進(jìn)階學(xué)習(xí)交流”,進(jìn)行關(guān)注

          后臺(tái)回復(fù)“Java”即可獲贈(zèng)Java學(xué)習(xí)資料

          夜深忽夢(mèng)少年事,夢(mèng)啼妝淚紅闌干。

          ????前面幾篇文章用Java帶大家一起了解了幾個(gè)游戲小項(xiàng)目,感興趣的小伙伴可以點(diǎn)擊文章觀摩下,手把手教你用Java打造一款簡(jiǎn)單故事書(shū)(上篇)手把手教你用Java打造一款簡(jiǎn)單故事書(shū)(下篇)手把手教你用Java打造一款簡(jiǎn)單考試系統(tǒng)(上篇)手把手教你用Java打造一款簡(jiǎn)單考試系統(tǒng)(下篇)手把手帶你用Java打造一款對(duì)對(duì)碰游戲(上篇)手把手帶你用Java打造一款對(duì)對(duì)碰游戲(下篇)手把手帶你用Java實(shí)現(xiàn)點(diǎn)燈游戲(上篇)手把手帶你用Java實(shí)現(xiàn)點(diǎn)燈游戲(下篇),接下來(lái)的幾篇文章是關(guān)于Java基礎(chǔ)的,希望對(duì)大家的學(xué)習(xí)有幫助,歡迎大家在討論區(qū)留言。


          一、static關(guān)鍵字

          使用static修飾的變量和方法分別稱為類變量(或稱靜態(tài)變量)和類方法(或稱靜態(tài)方法),沒(méi)有使用static修飾的變量和方法分別稱為實(shí)例變量和實(shí)例方法。


          二、靜態(tài)變量

          1.什么是靜態(tài)變量

          使用static關(guān)鍵字修飾成員變量,這個(gè)變量叫做靜態(tài)變量。

          2.例如多個(gè)圓形對(duì)象,那每個(gè)圓形對(duì)象都有自己的半徑(radius)和圓周率(PI),因?yàn)閳A周率是一個(gè)固定的常數(shù)3.141596,不用每個(gè)圓形對(duì)象各自擁有。圓周率(PI)作為共享的,每個(gè)圓形對(duì)象的半徑可能是不一樣的。

          3.如何使用靜態(tài)變量

          例如:

          //圓形類public class Ball {public double radius;//圓的半徑static double PI=3.141956;//圓周率public static void main(String[] args) {// TODO Auto-generated method stub    Ball b1=new Ball();//創(chuàng)建第一個(gè)圓形對(duì)象    Ball b2=new Ball();//創(chuàng)建第二個(gè)圓形對(duì)象    Ball.PI=3.141596;//靜態(tài)變量賦值    b1.radius=5;//給第一個(gè)圓形的半徑賦值    b2.radius=8;//給第一個(gè)圓形的半徑賦值    System.out.println("第一個(gè)圓形對(duì)象的圓周率:"+b1.PI+"  "+"半徑為:"+b1.radius);//打印第一個(gè)圓形的圓周率和半徑    System.out.println("第二個(gè)圓形對(duì)象的圓周率:"+b2.PI+"  "+"半徑為:"+b2.radius);//打印第二個(gè)圓形的圓周率和半徑  }}

          輸出的結(jié)果是:

          第一個(gè)圓形對(duì)象的圓周率:3.141956  半徑為:5.0
          第二個(gè)圓形對(duì)象的圓周率:3.141956 半徑為:8.0

          上面的代碼中,在Ball類中定義了一個(gè)靜態(tài)變量PI,用來(lái)表示圓周率它是作為所有實(shí)例的所共享,因?yàn)檫@個(gè)圓周率(PI)是靜態(tài)變量可以直接使用Ball.PI的方式調(diào)用,也可以使用實(shí)例化對(duì)象調(diào)用,b1.PI。第一個(gè)圓形對(duì)象和第二個(gè)圓形對(duì)象的PI屬性均為3.141596。


          三、靜態(tài)方法

          1.什么是靜態(tài)方法

          靜態(tài)變量和方法可以在不創(chuàng)建對(duì)象的情況下進(jìn)行訪問(wèn)。靜態(tài)方法在類的定義方法前面加static就叫做靜態(tài)方法。

          2.靜態(tài)方法的訪問(wèn)格式同靜態(tài)變量一樣

          類名.方法名

          3.怎么使用靜態(tài)方法

          public class Ball01 {public double radius;//圓的半徑public static double PI=3.141596;//圓周率//角度轉(zhuǎn)徑度public static double toRadius(double angdeg){  return angdeg*(Ball01.PI/180);}
          public static void main(String[] args) {// TODO Auto-generated method stub//Ball01 b1=new Ball01();//創(chuàng)建一個(gè)圓的對(duì)象 System.out.print(Ball01.toRadius(100));//調(diào)用對(duì)象的靜態(tài)方法 }}

          輸出的結(jié)果是:

          1.745331111111111

          在上面代碼中,在Ball01類定義了一個(gè)靜態(tài)的方法toRadius()角度轉(zhuǎn)徑度,通過(guò)對(duì)象實(shí)例化調(diào)用對(duì)象的靜態(tài)方法。一個(gè)靜態(tài)方法只能訪問(wèn)static修飾的成員,因?yàn)闆](méi)有被static修飾的成員首先需要?jiǎng)?chuàng)建對(duì)象才能訪問(wèn),而在靜態(tài)方法調(diào)用可以不用創(chuàng)建對(duì)象。


          四、靜態(tài)代碼塊

          1.什么是靜態(tài)代碼塊

          靜態(tài)代碼塊是使用一個(gè)大括號(hào){}包圍很多行的代碼,并用static關(guān)鍵字修飾的代碼。

          2.隨著類的加載而執(zhí)行,而且只執(zhí)行一次。一般是使用靜態(tài)代碼塊來(lái)對(duì)類成員變量進(jìn)行初始化。

          3.靜態(tài)代碼塊和非靜態(tài)代碼塊的寫(xiě)法 ? ?

          靜態(tài)代碼塊:static{}
          非靜態(tài)代碼塊:{}

          4.怎么使用靜態(tài)代碼塊

          例如:

          class Person3{  static String name;  //靜態(tài)代碼塊  static{    name="李華";    System.out.println("Person3類的靜態(tài)代碼執(zhí)行...");  }}
          public class test {//靜態(tài)代碼塊static{ System.out.println("測(cè)試類的靜態(tài)代碼執(zhí)行...");}public static void main(String[] args) {// TODO Auto-generated method stub Person3 p1=new Person3();//創(chuàng)建第一個(gè)Person3對(duì)象 Person3 p2=new Person3();//創(chuàng)建第二個(gè)Person3對(duì)象 }}

          運(yùn)行的結(jié)果是: ? ?

          測(cè)試類的靜態(tài)代碼執(zhí)行...
          Person3類的靜態(tài)代碼執(zhí)行...

          我們從運(yùn)行的結(jié)果可以看出,兩個(gè)靜態(tài)代碼塊都被執(zhí)行。首先是加載類test,在加載類的同時(shí)加載靜態(tài)代碼塊,然后執(zhí)行主程序main()。在main方法中創(chuàng)建兩個(gè)Person3對(duì)象,兩次實(shí)例化對(duì)象后,靜態(tài)代碼只執(zhí)行一次,就說(shuō)明了隨著類的加載而執(zhí)行,而且只執(zhí)行一次。


          五、總結(jié)

          本文主要介紹了static關(guān)鍵字、靜態(tài)變量、靜態(tài)方法、靜態(tài)代碼塊。

          使用static修飾的變量和方法分別稱為類變量和類方法,沒(méi)有使用static修飾的變量和方法分別稱為實(shí)例變量和實(shí)例方法。

          靜態(tài)變量是使用static關(guān)鍵字修飾成員變量,如何使用靜態(tài)變量案例理解這個(gè)用法。靜態(tài)方法是在類的定義方法前面加static,通過(guò)一個(gè)怎么去使用靜態(tài)方法案例幫助理解。

          靜態(tài)代碼塊是使用一個(gè)大括號(hào){}包圍很多行的代碼,并用static關(guān)鍵字修飾的代碼。希望通過(guò)本文的學(xué)習(xí),對(duì)你有所幫助!

          -------------------?End?-------------------

          往期精彩文章推薦:

          歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

          想加入Java學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群

          萬(wàn)水千山總是情,點(diǎn)個(gè)【在看】行不行

          瀏覽 38
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  特级特黄特色大片免费看 | 日韩天天操 | 无码一级日韩免费 | caobise| 欧美三级在线视频 |