第一章:
1.敘述功能分解中使用的基本方法。
將問題分解成多個功能步驟。
2.導致需求更變的三個原因是什么?
用戶對自己需求的看法,會因為與開發人員的討論,和看到軟件新的可能性,而發生變化。
開發人員對用戶問題領域的看法,會在開發使該領域自動化的軟件的過程中,因為對它更加熟悉而發生變化。
3.我提倡用責任而不是功能來思考。這意味着什么呢?請舉一個例子。
每個對象應該自己負責自己,而且應該清除地定義責任。比如學生上課應該知道從上一個教室到下一個教室。
4.給出耦合和內聚的定義,什么是緊耦合?
耦合:兩個例程之間聯系的緊密程度
內聚:一個例程內部組成部分之間互相的緊密程度。
兩個例程之間聯系非常緊密。
5.對象接口的目的是什么?
對象的很多方法都將標識為可被其他對象調用。
6.給出類實例的定義。
類的特例(總是一個對象)。類的特殊實例或者實體。每個對象都有自己的狀態。
因此同一個類型(類)可以有幾個對象。
7.類是一個對象行為的完整定義。這句話說明了對象的哪三個方面?
8.抽象類的作用是什么?
抽象類為我們提供了一種方法,能夠給一組相關的類賦予一個名字。
這使我們能夠將這一組相關類看成一個概念。
9.對象可能具有的三種主要可訪問性是什么?
public公開,protect保護,private私有
10.給出封裝的定義,並舉出一個行為封裝的例子。
不僅僅是數據的隱藏,還是類的隱藏。
11.給出多態的定義,並舉出一個多態的例子。
抽象類引用概念性地要求對象做什么時,將得到不同的行為。
12.觀察對象的三種視角。
創建時、銷毀時、派生