當(dāng)前位置:首頁(yè) > IT技術(shù) > 編程語(yǔ)言 > 正文

JAVA Object類(lèi)的使用、equals()、單元測(cè)試、包裝類(lèi)
2021-10-28 15:13:42

1.java.lang.Object類(lèi)的說(shuō)明:

1.Object類(lèi)是所有JAVA類(lèi)的根父類(lèi)

2.如果在類(lèi)的聲明中未使用extends關(guān)鍵字指明其父類(lèi),則默認(rèn)父類(lèi)為java.lang.Object類(lèi)

3.Object類(lèi)中的功能(屬性、方法)具有通用性

屬性:無(wú)

方法:equals() / toSteing() / getClass() / hashCode() / clone() / finalize()?

? ? wait()、 notify()、 notifyAll()

4.Object類(lèi)只聲明了一個(gè)空參構(gòu)造器


2.equals()的使用:

1.是一個(gè)方法,而非運(yùn)算符(與 == 不同)

2.只能適用于引用數(shù)據(jù)類(lèi)型

3.Object類(lèi)中定義的equals()方法 等同于 == :比較兩個(gè)對(duì)象的地址值,即兩個(gè)引用是否指向同一個(gè)對(duì)象實(shí)體

4.像String,Date,F(xiàn)ile,包裝類(lèi)等都重寫(xiě)了Object類(lèi)中的equals()方法。重寫(xiě)以后,比較的不是地址值,而是兩個(gè)對(duì)象的“實(shí)體內(nèi)容”是否相同

5.我們自己定義的類(lèi)若想對(duì)比兩個(gè)對(duì)象的實(shí)體內(nèi)容,而不是對(duì)比地址值。則也需要自己進(jìn)行重寫(xiě)


3.回顧 == 運(yùn)算符的使用

1.可以使用在基本數(shù)據(jù)類(lèi)型變量中或引用數(shù)據(jù)類(lèi)型變量中

2.如果比較的是基本數(shù)據(jù)類(lèi)型變量:比較兩個(gè)變量保存的數(shù)據(jù)是否相等。(不一定類(lèi)型要相同)

? ?如果比較的事引用數(shù)據(jù)類(lèi)型變量:比較兩個(gè)對(duì)象的地址值是否相同,即兩個(gè)引用是否指向同一個(gè)對(duì)象實(shí)體


4.單元測(cè)試方法:

步驟:

1.選中當(dāng)前工程 - 右鍵選擇:build path - add libraries - Junit 4 - 下一步

2.創(chuàng)建Java類(lèi),進(jìn)行單元測(cè)試

? ?此時(shí)的Java類(lèi)要求:1.此類(lèi)是public的 2.此類(lèi)提供公共的無(wú)參構(gòu)造器

3.此類(lèi)中聲明單元測(cè)試方法。

? ?此時(shí)的單元測(cè)試的方法:方法的權(quán)限是public,沒(méi)返回值,沒(méi)形參

4.此單元測(cè)試方法上需要聲明注解:@Test,并在單元測(cè)試類(lèi)中導(dǎo)入:import org.junit.Test。

5.聲明好單元測(cè)試方法以后,就可以在方法體內(nèi)測(cè)試相關(guān)的代碼。

6.寫(xiě)完代碼后,左鍵雙擊單元測(cè)試方法名,右鍵:run as - Junit Test

說(shuō)明:

1.如果沒(méi)異常:綠條

2.如果有異常:紅條


5.包裝類(lèi)

1.為什么要有包裝類(lèi)(或封裝類(lèi))

? ?為了使基本數(shù)據(jù)類(lèi)型的變量具有類(lèi)的特征,引入包裝類(lèi)

2.基本數(shù)據(jù)類(lèi)型與對(duì)應(yīng)的包裝類(lèi):

基本數(shù)據(jù)類(lèi)型? ? ? ? ? ? ? ? ? ? ? ?包裝類(lèi)

byte? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Byte

short? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Short

int? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Integer

long? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Long

float? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Float

double? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Double

boolean? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Boolean

char? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Character


3.需要掌握的類(lèi)型間的轉(zhuǎn)換(基本數(shù)據(jù)類(lèi)型、包裝類(lèi)、String)

? ?基本數(shù)據(jù)類(lèi)型<———>包裝類(lèi):JDK5.0新特性:自動(dòng)裝箱 自動(dòng)拆箱

? ?基本數(shù)據(jù)類(lèi)型、包裝類(lèi)<———>String:調(diào)用String重載的valueOf(Xxx xxx)

? ?String<———>基本數(shù)據(jù)類(lèi)型、包裝類(lèi):調(diào)用包裝類(lèi)的parseXxx(String s)

本文摘自 :https://blog.51cto.com/u

開(kāi)通會(huì)員,享受整站包年服務(wù)立即開(kāi)通 >