摘要:關鍵字在聲明一個對象時有兩種用法,第一種,在使用這個類的時候聲明,就像這樣不合法可以向對象加數據。第二種,在定義這個類的時候使用關鍵字比如這種他僅僅表示不能被繼承。因此,定義類使用關鍵字與在類中間聲明一個是對象成員變量是的作用是不一樣。
String不可變的是參考這里。
http://www.2cto.com/kf/201401/272974.html
String 不可變得一個重要原因是因為String被聲明成了final類,但是觀察Stringbuffer也被聲明成了final類。所以,String 不可變得原因不是因為其在聲明的時候聲明生了final,而是在各種方法的內部都是return了一個新的對象,所以String是不可修改的。
final關鍵字在聲明一個對象時有兩種用法,第一種,在使用這個類的時候聲明,就像這樣:
javapublic class Day01 { private static final List Loans = new ArrayList(); public static void main(String[] args) { Loans.add("xxx"); Loans = new Vector(); //不合法 } }
可以向對象加數據。但是不能使他的引用指向另外一個對象。
第二種,在定義這個類的時候使用final關鍵字:
比如這種:
javapublic final class String{ }
他僅僅表示不能被繼承。但是他的引用依然能夠指向其他的對象:
java String a="ccc"; a="bbbb";
一個例子:
javapublic final class HelloWorld { private String name; private String age; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } @Override public String toString() { return "HelloWorld [name=" + name + ", age=" + age + "]"; } } public class Day01 { private static final List Loans = new ArrayList(); public static void main(String[] args) { HelloWorld a=new HelloWorld(); a.setName("x"); a=new HelloWorld(); a.setName("y"); } }
在定義類的時候聲明這個類是final的,但是它的引用依然可以指向別的對象。因此,定義類使用final關鍵字與在類中間聲明一個是對象成員變量是final的作用是不一樣。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64346.html
摘要:作為條件變量的的不僅可以認為內嵌了一把鎖,還內嵌了一個條件變量。操作條件變量的函數將當前線程在條件變量上阻塞,一般是為了等待其他線程的某件事情執(zhí)行完成。其它裝箱類其它裝箱類的代碼這里就不分析了。重點關注下各裝箱類的緩存范圍。 jdk源碼讀到現在這里,重要的集合類也讀了一部分了。集合類再往下讀的話,就要涉及到兩個方向。第一,是比較典型的但是不常用的數據結構,這部分我準備將數據結構復習、回...
摘要:因此,對應地我們可以翻譯這段二進制字節(jié)碼為這樣的代碼注意,這段代碼并不能通過編譯,因為源碼這一層是不允許直接繼承的,這個繼承過程只允許在編譯器內部解語法糖的過程中被編譯器添加,添加之后的類才會有的訪問標識符。 語法糖(Syntactic Sugar)的出現是為了降低我們編寫某些代碼時陷入的重復或繁瑣,這使得我們使用語法糖后可以寫出簡明而優(yōu)雅的代碼。在Java中不加工的語法糖代碼運行時可...
摘要:所以我決定先從類入手,深入的研究一番來開個好頭。之所以會有以上的效果,是因為有字符串常量池的存在。同時運行時實例創(chuàng)建的全局字符串常量池中有一個表,總是為池中的每個字符串對象維護一個引用,所以這些對象不會被。 開始寫 Java 一年來,一直都是遇到什么問題再去解決,還沒有主動的深入的去學習過 Java 語言的特性和深入閱讀 JDK 的源碼。既然決定今后靠 Java吃飯,還是得花些心思在上...
閱讀 1225·2021-11-11 16:54
閱讀 877·2021-10-19 11:44
閱讀 1337·2021-09-22 15:18
閱讀 2445·2019-08-29 16:26
閱讀 2946·2019-08-29 13:57
閱讀 3094·2019-08-26 13:32
閱讀 1081·2019-08-26 11:58
閱讀 2328·2019-08-26 10:37