java中的Object、封裝類(J2SE入門8)

來源:互聯網
上載者:User

java中的根類Object

java中所有的類的父類或直接或間接的或隱含的都是Object類。
java不允許迴圈繼承,也就是互相繼承是不可以的。

Object類中的finalize()一個對象被垃圾收集的時候,最後會由JVM調用這個對象的finalize方法

Object類中有一個String toString()方法,返回該對象的字串表示。Object類中的toString()方法他返回的是類名加上他的地址的一個字串。在子類中推薦覆蓋toString()方法。

Object類中的boolean equals(Objecto)方法是用來比較對象的內容是否相等,其傳回值是boolean類型的值,相同為真,不同則為假。實際上還是比較對象地址是否相同。String類覆蓋了equals()方法,他比較是對象中的內容是否相同。子類中也推薦覆蓋Object類中繼承的equals()方法

equals()的覆蓋原則:
自反性:x.equals(x) 為true
對稱性:y.equals(x) 和 x.equals(y) 的值要相同,要麼都為true,要麼都為false。
傳遞性:x.equals(y)為true, y.equals(z)也為true ,那麼x.equals(z)一定也為true。

覆蓋equals()方法的步驟:

boolean equals(Object o){
if(this==o) return true; //1,看看是不是一個對象
if(o==null) return true; //2,看看對象是不是空
if(!(o instanceof 本類類名)) return false; //看看是不是本類對象

...... //根據本類設計。
}


封裝類

java為每一個單一資料型別提供了一個封裝類,使每個單一資料型別可以被Object來裝載。

除了int(Integer)和char(Character),其餘類型首字母大寫即成封裝類類型名。

轉換字元的方式:
int I=10;
String s=I+” ”;
String s1=String.valueOf(i);

Int I=10;
Interger I_class=new integer(I);

封裝類、字串、基本類型間的轉換

Interger--------------------(Double(x.toString))------------>Double
String -----------------(Integer.valueOf() )---------------->Integer
Integer-----------------(x.toString() )--------------------->String
int----------------------(100+””)------------------------->String
String------------------(Integer.parseInt() )--------------->int
Integer-----------------(Integer.intValue() )--------------->int



學會查看javadoc的協助文檔。要先關注要使用方法的傳回值類型,也就是要獲得內容的類型,然後看方法名,JDK中的方法名基本上是見名知義,參數表,就是看需要什麼才可以獲得的需要的那些內容,也要看自己能夠提供什麼。

注意:“==”在任何時候都是比較地址,這種比較永遠不會被覆蓋。

程式員自己編寫的類和JDK類是一種合作關係。(因為多態的存在,可能存在我們調用JDK類的情況,也可能存在JDK自動調用我們的類的情況。)

注意:類型轉換中double\Interger\String之間的轉換最多。

(註:所有使用內部類的地方都可以不用內部類,但使用內部類可以使程式更加的簡潔,便於命名規範和劃分階層)。

內部類是指在一個外部類的內部再定義一個類。
*內部類可為靜態,可用protected和private修飾。(而外部類不可以:頂級類只能使用public和default)。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.