物件導向的理解

2021-07-11 12:03:32 字數 1261 閱讀 8143

關於物件導向的概念,一直都是似懂非懂的狀態,做次筆記方便日後溫故而知新

封裝:解決了資料的安全問題.

繼承: 解決了**的重用問題.

多型:解決了程式的擴充套件問題.

在現實生活中,可以理解為兒子繼承了父親的財產。 財產的重用。

在程式中是解決**的重用問題

繼承是利用現有的類建立新類的過程,現有的類稱作基類(父類)。建立的新類稱作派生類(子類)

基類(父類)  ---->   派生類(子類)

方法+屬性 -----> 基類的方法+基類的屬性 + 自己的方法與屬性

繼承注意事項:

1.私有的屬性和方法,不能繼承

2.構造方法不能被繼承,而且子類裡面的構造方法,一定會呼叫父類的構造。如果沒有,呼叫的是父類的空構造

3.靜態的方法能被繼承

4.子類除了可以繼承得到父類的屬性以及方法外,還能自己定義屬性以及方法.

5.只能單繼承,多實現 (c++可以有多繼承)可以實現多個介面

6.繼承是單向性的

學生 老師

大學生 研究生

最高層是最普通,最一般的。往下每一層都比上一層更具體,並且包含高層的特徵。

通過這樣的層次結構使下層的類能自動享用上層類的特點和性質.

繼承的作用:

根本就是解決的**的重用

實現了遞增式的程式設計

能減少**和資料的重複冗餘度,並通過增強一致性來介紹模組間的介面和介面。從而增強了程式的可維護性

重寫、過載

1.在繼承中實現過載,方法名相同,引數不同

2.在繼承中,方法名,引數,返回值必須相同。

3.重寫目的,父類與子類需要實現相同的功能,但是表現不一樣。

多型的概念:

相同或相似的**,執行的結果不相同。重寫與過載就是多型一種表現.

引用轉型:

person p = new person();

如果是在繼承中,是可以父類的引用指向子類的物件

例如,學生類繼承人類

person stu = new student();

物件導向的理解

今天發現一本好書,設計模式精解,作者是alan shalloway和james r.trott,薄薄的一本,但是講的很清楚,也讓我對物件導向和設計模式有了多一點的理解。記得去三星實習生面試的時候面試過就問過乙個問題,談談對物件導向的理解,我當時就只說了乙個多型,而且感覺沒有條理,所以今天趁著看過書,...

物件導向的理解

1.物件導向的思想 誰擁有資料,誰就提供運算元據的方面。eg1 售票員統計票上的資料這個過程中統計方法是票據提供的。eg2 兩塊石頭磨成一塊石刀,石刀砍樹,砍成木材,木材又變成椅子 eg3.乙個小球從繩子一端移到至另一端。就第二個例子而言,石頭變成石刀,這個變成的方法不應該是石頭提供的,因為一般沒有...

物件導向的理解

面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。例如五子棋,面向過程的設計思路就是首先分析問題的步驟 1 開始遊...