日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Static Final用法

發布時間:2024/10/12 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Static Final用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、final數據

在 java編程語言中,有時候需要告知編譯器一段數據是不變的編譯期常量。對于這種情況,編譯器可以將此常量值帶入需要用到它的計算式子當中,這種在編譯時 執行計算式的方法減輕了運行時的開銷。通常,這類常量數據都是基本類型的數據,并賦予關鍵字final,同時在對此常量定義時需要進行賦值。

值得注意的是:對于基本類型,使用final關鍵字將使數值恒定不變;而對于對象引用,final則是使引用恒定不變。一旦引用被初始化為指向一個對象時,它也就無法再指向另外一個對象,然而該對象本身是可以被修改的。通常,對于一個既是static又是final的域只占一段不能改變的存儲空間。

下面的例子驗證了final數據的含義。

class Hank

{

?????? int i;

?????? public Hank(int i){this.i=i;}

}

public class FinalTest

{

?????? private String s;

?????? public FinalTest(String s){this.s=s;}

?????? private final int value=20;

?????? private static final int INT_1=50;

?????? public static final int? INT_2=60;

?????? static final int INT_3=70;

?????? private final Hank h1=new Hank(1);

?????? private static final Hank h2=new Hank(2);

?????? private Hank h3=new Hank(3);

?????? private final int[] a={1,2,3,4,5};

?????? public String toString()

?????? {

????????????? return s+": "+"INT_2= "+INT_2;

?????? }

?????? public static void main(String[] args)

?????? {

????????????? FinalTest ft1=new FinalTest("ft1");

????????????? //ft1.value++;常量值不能被修改

????????????? ft1.h1.i++;//對象引用不能改變,但是其對象本身是可以修改的

????????????? ft1.h3=new Hank(2);

????????????? //ft1.h1=new Hank(1);常量對象引用不能再指向另一個對象引用

????????????? for(int i=0;i<ft1.a.length;i++)

????????????? {

???????????????????? ft1.a[i]++; //對象引用不能改變,但是其對象本身是可以修改的

???????????????????? System.out.println(ft1.a[i]);

????????????? }

????????????? //ft1.a=new int[3];常量對象引用不能再指向另一個對象引用

?????? }

}

?

二、空白final

??? 被聲明為final但又沒有給定初值的域即為空白final,編譯器確保使用前必須初始化空白final。比如:

class Blank

{

??? private int i;

??? Blank(int i){this.i=i;System.out.println("Blank.i="+this.i);}

}

public class BlankFinal

{

??? private final int i;//blank final

??? private final Blank b;//blank final reference

??? BlankFinal()

{

i=1;b=new Blank(1);//使用前必須初始化

System.out.println("BlankFinal.i="+this.i);

}

??? BlankFinal(int i)

{

this.i=i;b=new Blank(i); //使用前必須初始化

System.out.println("BlankFinal.i="+this.i);

}

??? public static void main(String[] args)

??? {

?????????? new BlankFinal();//Blank.i=1;BlankFinal.i=1;

?????????? new BlankFinal(2); //Blank.i=2;BlankFinal.i=2;

??? }?????

}?

?

三、final參數

?????? Java允許在函數參數列表中以聲明的方式將參數指明為final,這使得在函數體當中修改參數引用所指向的對象變得不合法。比如說:

class Args

{

?????? public void f(String s){System.out.println(s);}

}

public class ArgsFinal

{

?????? void has(final Args arg)

?????? {

????????????? //arg=new Args();不能修改final參數

????????????? arg.f("with final");

?????? }

?????? void dnthas(Args arg)

?????? {

????????????? arg=new Args();//能修改final參數

????????????? arg.f("without final");

?????? }

?????? public static void main(String[] args)

?????? {

????????????? ArgsFinal af=new ArgsFinal();

????????????? Args ar=new Args();

????????????? af.has(ar);//with final

????????????? af.dnthas(ar);//without final

?????? }

}

?

四、final

?????? 如果不想繼承某個類,則可以考慮將此類設置成final的形式。即是說,程序員對該類不能做任何改動,同時也意味著它不會有子類。比如:

?????? Class Base{ …}

?????? Final Class SubClass{…}

?????? //! Class Derived extends SubClass{…}不能由finalSubClass導出新類

需要注意的是,所有final類中的方法都隱式的final,他們是無法被覆蓋或修改的,因此在其中的方法顯示指明為final就顯得有些多此一舉了。

轉載于:https://www.cnblogs.com/wzyxidian/p/4383305.html

總結

以上是生活随笔為你收集整理的Static Final用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 五月激情视频 | 日产精品一区 | 美女试爆场恐怖电影在线观看 | 九九九国产视频 | 好吊色欧美一区二区三区视频 | 超碰不卡| 精品1卡二卡三卡四卡老狼 日韩三级网 | 日韩成人在线免费视频 | 91禁外国网站 | 三级av网| 中文字幕人妻一区二区三区 | 91九色在线 | 五月天六月婷 | 狠狠干婷婷 | 美女又爽又黄免费 | 污片网站在线观看 | 小早川怜子久久精品中文字幕 | 无人在线观看高清视频 单曲 | 在线观看亚洲一区二区 | 秋霞国产精品 | 精品在线视频免费 | 亚洲日本一区二区三区 | 97成人人妻一区二区三区 | 欧美激情免费在线观看 | 青青草原亚洲 | 原创少妇半推半就88av | 丁香六月av | 日韩有码中文字幕在线观看 | 国产精品18久久久久久无码 | 亚洲女同女同女同女同女同69 | 无码国产精品一区二区高潮 | 老女人一区| 久av在线 | 亚洲人成人网 | 日本不卡一区在线观看 | 蜜臀av一区二区三区有限公司 | 天堂网中文在线 | 亚洲精华国产精华精华液网站 | 伊人伊人伊人伊人 | 二区三区偷拍浴室洗澡视频 | 扶她futa粗大做到怀孕 | 欧美日韩在线综合 | 大学生av| 狠狠干2024 | 国产精久久一区二区三区 | 免费超爽大片黄 | 久久精品99 | 红桃视频成人在线 | 成人免费版 | 色一情一区二区三区四区 | 精品在线你懂的 | 国产综合精品视频 | 色婷视频 | 茄子视频色 | 久操亚洲 | 欧美国产一区二区三区 | 亚洲综合一二三区 | 播放灌醉水嫩大学生国内精品 | 亚洲涩涩网 | 网站黄在线观看 | 亚洲男女在线观看 | 午夜性福利 | 波多野结衣伦理 | 色综合久久88色综合天天6 | 涩涩视频免费看 | 国产又色又爽无遮挡免费动态图 | 成人免费xxxxxx视频 | 日本伦理片在线看 | 美女国产精品 | 爱爱免费网站 | 热热av| 欧美色图第一页 | 亚洲精品网站在线观看 | 久久精品无码中文字幕 | 美女又爽又黄免费视频 | 欧美xxxⅹ性欧美大片 | 国产操操操 | 欧美另类tv | 亚洲永久精品一区 | 自拍偷拍第二页 | 亚洲色图图片区 | 538国产精品一区二区免费视频 | av噜噜 | 亚洲成人精选 | 琪琪午夜伦理 | 欧美8888| 欧美国产日韩在线 | 久久久久久69 | 成人av免费 | www.youjizz.com日本 | 国产男女无套 | 国产精品二区三区 | 欧美一级电影在线 | 超碰超碰97 | 美女高潮黄又色高清视频免费 | 国产区网址 | 顶级毛片 | 色婷婷一区 | 日韩少妇内射免费播放 |