<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>

          教妹學(xué)Java第8講:初識(shí)Java變量

          共 3644字,需瀏覽 8分鐘

           ·

          2020-10-28 15:12

          hello,小伙伴們,大家好,我是沉默王二,一枚沉默但有趣的程序員。又到了《教妹學(xué) Java》的時(shí)間,很開(kāi)心,很期待,很舒適,有沒(méi)有?這是《教妹學(xué) Java》專欄的第 8 篇文章,我們來(lái)談?wù)劇癑ava ?變量”。

          強(qiáng)烈推薦:我在 GitHub 上發(fā)現(xiàn)了一個(gè)寶藏項(xiàng)目,里面羅列了幾百本 Java 經(jīng)典電子書(shū),包含入門(mén)、工具、框架、數(shù)據(jù)庫(kù)、并發(fā)編程、底層、性能優(yōu)化、設(shè)計(jì)模式、計(jì)算機(jī)網(wǎng)絡(luò)、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)與算法、面試、大數(shù)據(jù)、架構(gòu)等等方面,應(yīng)有盡有,需要的小伙伴可以到 GitHub 上自?。?br>https://github.com/itwanger/JavaBooks

          上一篇文章發(fā)表后,就有小伙伴留言說(shuō)“二哥,你是成功帶妹入坑啊”,我也是被逼的啊。所以專欄名你們也看到了,對(duì),初衷真的是教我妹學(xué) Java。不過(guò),我相信小伙伴們?cè)陂喿x的過(guò)程中也一定能感受到思維的樂(lè)趣,還能真的學(xué)習(xí)到知識(shí)。

          再次強(qiáng)調(diào),《教妹學(xué) Java》專欄面向的是零基礎(chǔ)的 Java 學(xué)習(xí)者,我希望這個(gè)專欄能夠帶領(lǐng) Java 初學(xué)者輕松邁進(jìn)編程世界的大門(mén),并且能夠讀寫(xiě)編寫(xiě)出規(guī)范、有用的 Java 代碼。同時(shí),為后續(xù)的深入學(xué)習(xí)打下堅(jiān)實(shí)的基礎(chǔ)。

          我妹(親妹)今年上大學(xué)了,學(xué)的計(jì)算機(jī)編程,沒(méi)成想,她的一名老師竟然是我的讀者,我妹是又驚喜又恐慌,驚喜是她哥我的讀者群體還挺廣泛的嘛,恐慌的是萬(wàn)一學(xué)不好豈不是很丟他哥的臉?

          為了給妹妹全方位的支援,就有了《教妹學(xué) Java》這個(gè)專欄,希望我妹能通過(guò)這個(gè)專欄更快地掌握 Java 這門(mén)編程語(yǔ)言。同時(shí),也希望這個(gè)專欄能夠幫助到更多剛?cè)腴T(mén)的初學(xué)者,那就爽歪歪了。

          ------我是正兒八經(jīng)的分割線--------

          “二哥,聽(tīng)說(shuō) Java 變量在以后的日子里經(jīng)常用,能不能提前給我透露透露?”三妹咪了一口麥香可可奶茶后對(duì)我說(shuō)。

          “三妹啊,搬個(gè)凳子坐我旁邊,聽(tīng)二哥來(lái)給你慢慢說(shuō)啊?!?/p>

          Java 變量就好像一個(gè)容器,可以保存程序在運(yùn)行過(guò)程中的值,它在聲明的時(shí)候會(huì)定義對(duì)應(yīng)的數(shù)據(jù)類型(Java 分為兩種數(shù)據(jù)類型:基本數(shù)據(jù)類型和引用數(shù)據(jù)類型)。變量按照作用域的范圍又可分為三種類型:局部變量,成員變量和靜態(tài)變量。

          比如說(shuō),int data = 88;,其中 data 就是一個(gè)變量,它的值為 88,類型為整形(int)。

          01、局部變量

          在方法體內(nèi)聲明的變量被稱為局部變量,該變量只能在該方法內(nèi)使用,類中的其他方法并不知道該變量。來(lái)看下面這個(gè)示例:

          /**
          ?*?@author?微信搜「沉默王二」,回復(fù)關(guān)鍵字?PDF
          ?*/

          public?class?LocalVariable?{
          ????public?static?void?main(String[]?args)?{
          ????????int?a?=?10;
          ????????int?b?=?10;
          ????????int?c?=?a?+?b;
          ????????System.out.println(c);
          ????}
          }

          其中 a、b、c 就是局部變量,它們只能在當(dāng)前這個(gè) main 方法中使用。

          聲明局部變量時(shí)的注意事項(xiàng):

          • 局部變量聲明在方法、構(gòu)造方法或者語(yǔ)句塊中。
          • 局部變量在方法、構(gòu)造方法、或者語(yǔ)句塊被執(zhí)行的時(shí)候創(chuàng)建,當(dāng)它們執(zhí)行完成后,將會(huì)被銷毀。
          • 訪問(wèn)修飾符不能用于局部變量。
          • 局部變量只在聲明它的方法、構(gòu)造方法或者語(yǔ)句塊中可見(jiàn)。
          • 局部變量是在棧上分配的。
          • 局部變量沒(méi)有默認(rèn)值,所以局部變量被聲明后,必須經(jīng)過(guò)初始化,才可以使用。

          02、成員變量

          在類內(nèi)部但在方法體外聲明的變量稱為成員變量,或者實(shí)例變量。之所以稱為實(shí)例變量,是因?yàn)樵撟兞恐荒芡ㄟ^(guò)類的實(shí)例(對(duì)象)來(lái)訪問(wèn)。來(lái)看下面這個(gè)示例:

          /**
          ?*?@author?微信搜「沉默王二」,回復(fù)關(guān)鍵字?PDF
          ?*/

          public?class?InstanceVariable?{
          ????int?data?=?88;
          ????public?static?void?main(String[]?args)?{
          ????????InstanceVariable?iv?=?new?InstanceVariable();
          ????????System.out.println(iv.data);?//?88
          ????}
          }

          其中 iv 是一個(gè)變量,它是一個(gè)引用類型的變量。new 關(guān)鍵字可以創(chuàng)建一個(gè)類的實(shí)例(也稱為對(duì)象),通過(guò)“=”操作符賦值給 iv 這個(gè)變量,iv 就成了這個(gè)對(duì)象的引用,通過(guò) iv.data 就可以訪問(wèn)成員變量了。

          聲明成員變量時(shí)的注意事項(xiàng):

          • 成員變量聲明在一個(gè)類中,但在方法、構(gòu)造方法和語(yǔ)句塊之外。
          • 當(dāng)一個(gè)對(duì)象被實(shí)例化之后,每個(gè)成員變量的值就跟著確定。
          • 成員變量在對(duì)象創(chuàng)建的時(shí)候創(chuàng)建,在對(duì)象被銷毀的時(shí)候銷毀。
          • 成員變量的值應(yīng)該至少被一個(gè)方法、構(gòu)造方法或者語(yǔ)句塊引用,使得外部能夠通過(guò)這些方式獲取實(shí)例變量信息。
          • 成員變量可以聲明在使用前或者使用后。
          • 訪問(wèn)修飾符可以修飾成員變量。
          • 成員變量對(duì)于類中的方法、構(gòu)造方法或者語(yǔ)句塊是可見(jiàn)的。一般情況下應(yīng)該把成員變量設(shè)為私有。通過(guò)使用訪問(wèn)修飾符可以使成員變量對(duì)子類可見(jiàn);成員變量具有默認(rèn)值。數(shù)值型變量的默認(rèn)值是 0,布爾型變量的默認(rèn)值是 false,引用類型變量的默認(rèn)值是 null。變量的值可以在聲明時(shí)指定,也可以在構(gòu)造方法中指定。

          03、靜態(tài)變量

          通過(guò) static 關(guān)鍵字聲明的變量被稱為靜態(tài)變量(類變量),它可以直接被類訪問(wèn),來(lái)看下面這個(gè)示例:

          /**
          ?*?@author?微信搜「沉默王二」,回復(fù)關(guān)鍵字?PDF
          ?*/

          public?class?StaticVariable?{
          ????static?int?data?=?99;
          ????public?static?void?main(String[]?args)?{
          ????????System.out.println(StaticVariable.data);?//?99
          ????}
          }

          其中 data 就是靜態(tài)變量,通過(guò)類名.靜態(tài)變量就可以訪問(wèn)了,不需要?jiǎng)?chuàng)建類的實(shí)例。

          聲明靜態(tài)變量時(shí)的注意事項(xiàng):

          • 靜態(tài)變量在類中以 static 關(guān)鍵字聲明,但必須在方法構(gòu)造方法和語(yǔ)句塊之外。
          • 無(wú)論一個(gè)類創(chuàng)建了多少個(gè)對(duì)象,類只擁有靜態(tài)變量的一份拷貝。
          • 靜態(tài)變量除了被聲明為常量外很少使用。
          • 靜態(tài)變量?jī)?chǔ)存在靜態(tài)存儲(chǔ)區(qū)。
          • 靜態(tài)變量在程序開(kāi)始時(shí)創(chuàng)建,在程序結(jié)束時(shí)銷毀。
          • 與成員變量具有相似的可見(jiàn)性。但為了對(duì)類的使用者可見(jiàn),大多數(shù)靜態(tài)變量聲明為 public 類型。
          • 靜態(tài)變量的默認(rèn)值和實(shí)例變量相似。
          • 靜態(tài)變量還可以在靜態(tài)語(yǔ)句塊中初始化。

          04、常量

          在 Java 中,有些數(shù)據(jù)的值是不會(huì)發(fā)生改變的,這些數(shù)據(jù)被叫做常量——使用 final 關(guān)鍵字修飾的成員變量。常量的值一旦給定就無(wú)法改變!

          常量在程序運(yùn)行過(guò)程中主要有 2 個(gè)作用:

          • 代表常數(shù),便于修改(例如:圓周率的值,final double PI = 3.14

          • 增強(qiáng)程序的可讀性(例如:常量 UP、DOWN 用來(lái)代表上和下,final int UP = 0

          Java 要求常量名必須大寫(xiě)。來(lái)看下面這個(gè)示例:

          /**
          ?*?@author?微信搜「沉默王二」,回復(fù)關(guān)鍵字?PDF
          ?*/

          public?class?FinalVariable?{
          ????final?String?CHEN?=?"沉";
          ????static?final?String?MO?=?"默";
          ????public?static?void?main(String[]?args)?{
          ????????FinalVariable?fv?=?new?FinalVariable();
          ????????System.out.println(fv.CHEN);
          ????????System.out.println(MO);

          ????}
          }

          “好了,三妹,關(guān)于 Java 變量就先說(shuō)這么多吧,你是不是已經(jīng)清楚了?”轉(zhuǎn)動(dòng)了一下僵硬的脖子后,我對(duì)三妹說(shuō)。

          “是啊,二哥,我想以后還會(huì)再見(jiàn)到它們吧?”

          “那見(jiàn)的次數(shù)可就多了,就好像你每天眨眼的次數(shù)一樣多?!?/p>

          這是《教妹學(xué) Java》專欄的第 8 篇文章,能看到這里的小伙伴都是最帥的,最美的,升職加薪就是你了?。

          寫(xiě)這個(gè)專欄的初衷就是為了幫助那些零基礎(chǔ)學(xué) Java,或者自學(xué) Java 感覺(jué)特別痛苦,特別難入門(mén)的小伙伴。

          另外,我還創(chuàng)建了一些「技術(shù)交流群」,群里氛圍很不錯(cuò),有不少小伙伴會(huì)分享一些校招或者社招經(jīng)驗(yàn),更重要的是,群里時(shí)不時(shí)會(huì)有「紅包」等福利,當(dāng)然,群里不允許任何形式的廣告。掃描下方的二維碼,回復(fù)「加群」即可。

          示例代碼已經(jīng)同步到 GitHub,地址為 github.com/itwanger,也可以點(diǎn)擊閱讀原文進(jìn)行跳轉(zhuǎn),歡迎 star。

          瀏覽 59
          點(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>
                  国产色婷婷综合 | 骚货网站 | 美女拍拍视频免费 | 欧美日本一频道 | 国产做爱视频网站18 |