第四章 對(duì)象與類

1.類是構(gòu)造對(duì)象的木板或藍(lán)圖,類構(gòu)造對(duì)象的過(guò)程稱為創(chuàng)建類的實(shí)例

2.封裝:把數(shù)據(jù)和行為組合在一個(gè)包中,并對(duì)對(duì)象的使用者隱藏了數(shù)據(jù)的實(shí)現(xiàn)方式,對(duì)象中數(shù)據(jù)稱為實(shí)例域,操縱數(shù)據(jù)的過(guò)程稱為方法

3.類之間的關(guān)系:

依賴:uses-a 一個(gè)類的對(duì)象需要訪問(wèn)另一個(gè)類的對(duì)象的數(shù)據(jù)。要減少依賴

聚合:has-a 聚合關(guān)系意味著類A的對(duì)象包含類B的對(duì)象 ?也叫關(guān)聯(lián)

繼承:is-a

4.并不是所有的類都具有面向?qū)ο蟮奶卣鳎热鏜ath類,只封裝了功能,沒(méi)有隱藏?cái)?shù)據(jù)

5.Java使用構(gòu)造器構(gòu)造新實(shí)例,構(gòu)造器是一種特殊的方法,用來(lái)構(gòu)造并初始化對(duì)象

要想構(gòu)造一個(gè)對(duì)象,要在構(gòu)造器前面加上new操作符 例如 new Date()

6.Date deadLine = new Date();

deadLine是對(duì)象變量,一個(gè)對(duì)象變量并沒(méi)有實(shí)際包含一個(gè)對(duì)象,而是引用了一個(gè)對(duì)象。

表達(dá)式 new Date() 構(gòu)造了一個(gè)Date類型的對(duì)象,并且它的值是對(duì)新創(chuàng)建對(duì)象的引用,這個(gè)引用存儲(chǔ)在deadLine中

7.簡(jiǎn)單的區(qū)別Date和Calendar:

java.util.Date :是日期數(shù)據(jù)

java.util.Calendar :是日歷數(shù)據(jù),用于日期的相關(guān)計(jì)算

推薦使用Calendar

8.對(duì)實(shí)例域作出修改的方法稱為更改器方法,訪問(wèn)實(shí)例域不修改稱為訪問(wèn)器方法

9.隱式參數(shù)與顯式參數(shù)

隱式參數(shù):是出現(xiàn)在方法名前的 ?

顯示參數(shù):出現(xiàn)在方法名后面括號(hào)中的 ?例如

public void raiseMoney(double lalala){

? ? double raise = this.salary * lalala;

? ? ?this.salaary+=raise;

}

lalala顯式參數(shù), ?salary隱式參數(shù),在方法前 ?實(shí)例域中聲明了

10.建議使用類名而不是對(duì)象來(lái)調(diào)用靜態(tài)方法

11.使用靜態(tài)方法的情況:

1)一個(gè)方法不需要訪問(wèn)對(duì)象的狀態(tài),其所需的參數(shù)都是通過(guò)顯示參數(shù)提供的

2)一個(gè)方法只需要訪問(wèn)類的靜態(tài)域

12.java總是按值調(diào)用的,方法得到的是所有參數(shù)值的一個(gè)拷貝,方法不能修改傳遞給他的任何參數(shù)變量的內(nèi)容 例如

int x = 1;

A.addlala(x);

執(zhí)行完成后 x的值還是1

13.總結(jié)java程序設(shè)計(jì)語(yǔ)言方法參數(shù)的使用情況

1)一個(gè)方法不能修改一個(gè)基本數(shù)據(jù)類型的參數(shù)(即數(shù)值型和布爾型)

2)一個(gè)方法可以改變對(duì)象參數(shù)的狀態(tài)

3)一個(gè)方法不能讓對(duì)象參數(shù)引用一個(gè)新的對(duì)象;

路iru: A a = new A();

? ? ? ? ? ? ?B b = new B();

? ? ? ? ? ? swap(a,b) ?(swap方法的作用是交換a,b)

操作對(duì)象變量 ?沒(méi)有用 執(zhí)行完 a還是a,b還是b

14.如果多個(gè)方法,有相同的名字,不同的參數(shù),便產(chǎn)生了重載。java允許沖澡恩和方法,不能有兩個(gè)名字相同,參數(shù)類型也相同但是返回值類型不同的方法

15.如果類中提供了至少一個(gè)構(gòu)造器,但是沒(méi)有提供無(wú)參構(gòu)造器,則在構(gòu)造對(duì)象時(shí)如果沒(méi)有提供參數(shù),就會(huì)被視為不合法

16.如果構(gòu)造器的第一個(gè)語(yǔ)句如this(……),這個(gè)構(gòu)造器將調(diào)用同一個(gè)類的另一個(gè)構(gòu)造器

17.調(diào)用構(gòu)造器的具體處理步驟:

1)所有數(shù)據(jù)被初始化為默認(rèn)值 0 false null等

2)如果在類聲明中出現(xiàn)次序,一次執(zhí)行所有域初始化語(yǔ)句和初始化塊

3)如果在構(gòu)造器的第一行調(diào)用了第二個(gè)構(gòu)造器,則執(zhí)行第二個(gè)構(gòu)造器的主題

4)執(zhí)行這個(gè)構(gòu)造器的主體

18.finalize方法在垃圾回收器清除對(duì)象之前調(diào)用。最好不用

19import語(yǔ)句還可以導(dǎo)入靜態(tài)方法和靜態(tài)域

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 12,394評(píng)論 6 13
  • 面向?qū)ο蟪绦蛟O(shè)計(jì)概述 1. 類 構(gòu)造對(duì)象的模版或藍(lán)圖 2. 對(duì)象的三個(gè)特性 對(duì)象的行為 對(duì)象的狀態(tài) 對(duì)象的標(biāo)識(shí) 3...
    Persistence2閱讀 263評(píng)論 0 0
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚(yú)_t_閱讀 34,687評(píng)論 18 399
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評(píng)論 19 139
  • 情人節(jié),活了二十四年也沒(méi)有過(guò)過(guò)的節(jié)日,好像總是覺(jué)得這些東西跟自己從來(lái)沒(méi)有關(guān)系,但是年紀(jì)大了尤其到了適婚年齡竟然會(huì)在...
    雕爺啊閱讀 247評(píng)論 0 0

友情鏈接更多精彩內(nèi)容