4.面向對象

將功能封裝進對象,強調了具備了功能的對象


eg1:將大象塞進冰箱:

面向對象思想:

我--指揮--冰箱;

冰箱:打開

冰箱:存儲

冰箱:關閉

(功能)

面向過程思想:

我打開冰箱,大象存儲進冰箱,關閉冰箱(動作)

---------------------------------------------------------------------------------------

eg2:

軟件公司招聘你去幹活:爲了提高工作效率

老闆(對象)--指揮你(對象)幹活

-------------------------------------------------------------------------------------


從例子理解什麼是面向對象:

①面向對象的特點:複雜的問題簡單化,能使角色轉變{執行者->指揮者}

②舉例:(結合生活)

面向對象思考方式思考問題,公司招人需求,提高發展

你需要找一些具備編程經驗的人幫公司完成工作

我就是那個對象,我是具備專業編程功能的人

你指揮我在做事

你在使用的我專業編程功能爲公司解決事情

-------------------------------------------------------------------------------------

類與對象的關係

名詞提煉法

人開門:門{開(){操作門}}人{開門(門){門.開()}}


面向對象三大特徵:封裝,繼承,多態

開發:其實就是找對象使用,沒有對象就創建對象

重點:找對象,建立對象,使用對象,維護對象的關係。


類和對象的關係:

類:對現實生活中事物的描述

對象:這類事物存在的個體

描述:提取對象中共性內容,對具體的抽象

共性:姓名,年齡,性別,學習java功能之類

該對象通過new產生的實體,在堆內存中

映射到java中,描述就是class定義的類,具體對象就是對應java在堆內存中用new建立的實體

Car c =new Car();

-------------------------------------------------------------------------------------

匿名對象:

new Car().num=5;①

new Car().color="blue";②

new Car().run();③

說明:默認num=4;color="yellow"

當調用②時,①成了垃圾,而③仍有意義

由此可知,匿名對象的使用方式:對象方法只調用一次,且作爲實參傳遞

-----------------------------------------------------------------------------------------------------

封裝:

隱藏對象的屬性和實現的細節,僅對外提供公共訪問方式

好處:

將變化隔離

便於使用

提高代碼重用性

提高安全性

原則:把不需要對外提供的內容隱藏,把屬性隱藏,提供公共方法對其訪問


注意:私有僅僅是封裝的一種表現形式,對訪問的數據進行操作,提高代碼健壯性


----------------------------------------------

構造代碼塊:

創建方法

class{

Syetem.out.println();

}

作用:給對象進行初始化,對象一建立就運行,優先於構造函數執行


構造代碼塊是給所有對象進行統一初始化

構造函數是給對應的對象初始化


重點:把構造函數初始化,相應的對象無法創建


-----------------------------------------------------------

this:

特點:就代表本類的對象

this代表它所在函數所屬對象的引用


應用:當定義類中功能時,該函數內部要用到調用該函數的對象時,這時使用this來表示這個對象,但凡本類功能內部使用了本類對象,都用this表示


一個類中可有多個構造函數,this()語句用於構造函數之間進行互相調用//this(name)

(要定義在構造函數第一行)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章