吼吼吼 昨天忘記寫了, 昨天上午上課倒是沒有學習到什麼東西,下午在圖書館看軟體設計師的考試輔導書 物件導向的程式設計,又把linux訊息看看~~ 以後走什麼方向 還在迷茫中~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
**物件導向設計:
物件之間的關係:依賴(需要某種服務),關聯(物件間有某種對應關係),聚合,組合,繼承...
依賴:物件之間最弱的一種關聯方式,是臨時性的關聯。**中一般指由區域性變數、函式引數、返回值建立的對於其他物件的呼叫關係。 依賴一般情況下是以下幾種情況之一:
a、classa中某個方法的引數型別是classb; 這種情況成為耦合;
b、classa中某個方法的引數型別是classb的乙個屬性; 這種情況成為緊耦合;
c、classa中某個方法的實現例項化classb;
d、classa中某個方法的返回值的型別是classb;
如果出現了上述四種情況之一,兩個類很有可能就是「依賴」關係。
依賴關係(dependency):
是類與類之間的連線,依賴總是單向的。依賴關係代表乙個類依賴於另乙個類的定義。下面的例子中class a 依賴與class b、c、d。
public class a
} 關聯和依賴的區別:
從類之間關係的強弱程度來分,關聯表示類之間的很強的關係;依賴表示類之間的較弱的關係;
從類之間關係的時間角度來分,
關聯表示類之間的「持久」關係,這種關係一般表示一種重要的業務之間的關係,需要儲存的,或者說需要「持久化」的,或者說需要儲存到資料庫中的。比如學生管理系統中的student類和class(班級)類,乙個student物件屬於哪個class是乙個重要的業務關係,如果這種關係不儲存,系統就無法管理。
另外,依賴表示類之間的是一種「臨時、短暫」關係,這種關係是不需要儲存的,比如student類和stueditscreen(學生登入介面)類之間就是一種依賴關係,stueditscreen類依賴student類,依賴student物件的資訊來顯示編輯學生資訊。
聚合(關聯關係的一種):表示has-a的關係,是一種不穩定的包含關係。聚合類不必對被聚合類負責。使用集合屬性表達聚合關係,當物件a被加入到物件b中,成為物件b的組成部分時,物件b和物件a之間為聚集關係。聚合是關聯關係的一種,是較強的關聯關係,強調的是整體與部分之間的關係。與關聯關係一樣,聚合關係也是通過例項變數來實現這樣關係的。關聯關係和聚合關係來語法上是沒辦法區分的,從語義上才能更好的區分兩者的區別。聚合關係(aggregation):是關聯關係的一種,是強的關聯關係。聚合是整體與個體之間的關係。如汽車類與引摯類,輪胎類之間的關係就是整體與個體的關係。
設計模式 物件導向一 物件導向
什麼是物件導向程式設計?物件導向程式設計是一種程式設計正規化和程式設計風格。它以類或物件作為組織 的基本單元,並將封裝 抽象 繼承 多型四個特性,作為 設計和實現的基石 什麼是物件導向程式設計語言?物件導向程式設計語言是支援類或物件的語法機制,並有現成的語法機制,能方便的實現物件導向程式設計四大特性...
物件導向設計模式學習(一) 物件導向設計模式與原則
1。軟體設計模式是一些常見問題的一般解決案。2。物件導向設計模式是在物件導向開發中描述物件之間資訊通訊的組織關係。3。面象物件的三個特點 封裝 內部實現的隱藏 繼承 實現 復用 多型 改寫物件的行為 4。實現封裝,繼承,多型並不代表就是乙個面象物件模式設計,是面象物件模式的設計才導致了封裝,繼承,多...
(一)物件導向理解
1.物件導向是什麼?物件導向 oo 將問題中的涉及的事物抽象化,描述事物在問題不同階段的狀態和行為。面向過程 po 將問題的解決步驟分析出後,按步驟依次執行直到得出結果。物件導向則是在你思考完步驟後,找出其中涉及的事物,將步驟中的資料,行為歸結到事物中進行分類,封裝。將面向過程的步驟進行分類歸納,得...