最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

150天打卡day14__static和final

2021-04-22 18:20 作者:關阿姨的Java日記  | 我要投稿

上節(jié)回顧

  • package

  • import

  • 封裝

本節(jié)重點

static

static英文含義靜態(tài)的,所有的靜態(tài)相關,都是用static關鍵字修飾的

  • static關鍵字可以修飾成員變量,稱為靜態(tài)變量

  • static關鍵字可以修飾方法,稱為靜態(tài)方法

  • static關鍵字可以修飾代碼塊,稱為靜態(tài)塊

靜態(tài)變量

  • 由static修飾

  • 屬于類的,存在方法區(qū)中,只有一份

  • 可以通過類名直接打點調用

  • 所有對象共享的數(shù)據(jù)都統(tǒng)一聲明為靜態(tài)變量

    • 飛機大戰(zhàn)里的圖片,視頻,音頻

優(yōu)點:靜態(tài)變量不需要實例化,靜態(tài)變量的值可以直接賦值,不需要參數(shù)傳遞

缺點:靜態(tài)變量屬于類,所以在類存在的時候就會加載到內存中,如果一直沒有被引用的話,會加大

內存負擔和程序運行負擔,影響運行效率


靜態(tài)方法

  • 由static修飾

  • 靜態(tài)方法和非靜態(tài)方法都存儲在方法區(qū)中,只有調用的時候有區(qū)別,靜態(tài)方法在調用的時候

    是直接用類名打點調用.非靜態(tài)方法通過對象來調用

注意

  • 如果想頻繁的使用一個方法,并且這個方法不需要某個對象數(shù)據(jù)時,就可以設置為靜態(tài)方法

  • 靜態(tài)方法中不允許有隱式的this關鍵字 ,this屬于對象,不屬于類,而靜態(tài)屬于類,不屬于對象

  • 靜態(tài)方法中不能調用非靜態(tài)成員

靜態(tài)方法只能訪問靜態(tài)的變量和調用靜態(tài)的方法,靜態(tài)的只能使用靜態(tài)的,但是非靜態(tài)的可以調

用靜態(tài)方法和變量,也可以調用非靜態(tài)的變量和方法

?

靜態(tài)塊

靜態(tài)代碼塊(靜態(tài)初始化塊):JVM加載類(加載在運行之前)時執(zhí)行,靜態(tài)代碼塊只執(zhí)行一次,

靜態(tài)塊常用來執(zhí)行類屬性的初始化。

例如:

?

思考:為啥需要靜態(tài)初始化塊?

靜態(tài)初始化塊主要用來初始化類變量。有時需要有些代碼在項目啟動時就執(zhí)行,靜態(tài)代碼塊是主動執(zhí)行的。

類變量可以在構造函數(shù)中初始化為啥還要定義靜態(tài)初始化塊呢?

因為,類變量可以通過類名.類變量的形式調用,有的時候我們不想為了初始化類變量而創(chuàng)建對象,所以就有了靜態(tài)初始化塊。

靜態(tài)初始化塊可以在類加載的時候執(zhí)行一次。避免了了初始化類變量而創(chuàng)建對象

final

final 最后,最終的

  • final關鍵字可以修飾成員變量和局部變量,

  • final關鍵字可以修飾方法。

  • final關鍵字可以修飾類。

final 修飾變量

通常由final定義的變量稱之為是常量。例如:常用于對一些特定數(shù)值的聲明

  • final關鍵字可用于聲明變量,必須在聲明時就對其進行賦值操作,一旦該變量被設定,就不可

    以改變

    • final關鍵字修飾一個基本類型的變量(包括局部變量和成員變量)時,該變量不能重

      新賦值,第一次的值為最終的

    • fianl關鍵字修飾一個引用類型變量時,該變量不能重新指向新的對象

?

final修飾方法

final修飾的方法不允許被重寫

final修飾類

  • 如果希望一個類不允許任何類繼承,而且也不允許其他人對這個類進行任何改動,可以將這

    個類設置為final類

  • 如果將這個類設定為final類,那么類中的所有方法都被隱式的設置為final形式的,但是類中的

    成員變量可以被定義為final形式或者非final形式.

static final

  • 聲明的同時必須初始化

  • 能同時static和final關鍵字修飾的量。一般情況下,是公有的,靜態(tài)的,不可改變的量

  • public static final修飾的量最好變量的名字全大寫且單詞間用下劃線分隔。通過類名調用

    這個量。

  • 當一個常數(shù)或字符串我們需要在程序中反復使用的時候,我們就可以把它定義為static

    final,這樣內存就不用重復的申請和釋放空間了。

  • 針對引用類型變量的final修飾符也是很多人搞混淆的地方。實際上final只是修飾引用變量

    的值(也就是限定引用保存的地址不能變)。至于該引用指向的對象,內容是否能變,那

    就管不著了。所以,對于如下語句:

你可以修改它指向的對象的內容,比如:

但是不能修改它的值,比如:

總結

static 靜態(tài)的 所有與靜態(tài)相關的,都由static修飾

static修飾變量稱之是靜態(tài)變量,屬于類存儲在方法區(qū),可以由類名直接調用

static修飾方法稱之是靜態(tài)方法,也屬于類存儲在方法區(qū),可以又類名調用,靜態(tài)方法中只能調用

靜態(tài)變量和方法,非靜態(tài)方法即可以調用非靜態(tài)變量也可以調用靜態(tài)變量和方法.

static修飾代碼塊稱之是靜態(tài)塊,在類加載期間執(zhí)行的代碼塊,只執(zhí)行一次,一般用來做類的初始

化工作.


歡迎??點贊+關注,筆芯??


150天打卡day14__static和final的評論 (共 條)

分享到微博請遵守國家法律
乌兰察布市| 大连市| 固原市| 柏乡县| 邵阳市| 楚雄市| 赤水市| 宜城市| 龙门县| 满城县| 玉门市| 中西区| 松桃| 新宾| 明星| 平果县| 绵阳市| 通榆县| 襄城县| 邹城市| 巴林左旗| 镇沅| 梅河口市| 普陀区| 土默特右旗| 长沙市| 方山县| 宁城县| 册亨县| 台江县| 利川市| 奉节县| 宁津县| 灵丘县| 奇台县| 张掖市| 巩义市| 四平市| 安乡县| 阿克苏市| 扶余县|