第1章 對象導論

1. 用例

本章介紹包括開發方法概述在內的OOP基本概念。

2. 靜態

2.1 抽象

過程型思想是:數據定義和函數調用。
OOP思想的本質是:程序可以通過添加新類型使自身適用於某個特定問題。因此自閱讀解決方案代碼時,也是在閱讀問題的描述。
面向對象的兩部分定義:用來表示問題空間概念的對象,以及發送給這些對象的用來表示在此空間內的行爲的消息。

2.2 面向對象程序設計方式

a. 萬物皆爲對象
b. 程序是對象的集合
c. 每個對象都有自己的由其他對象所構成的存儲
d. 每個對象都擁有其類型
e. 某一特定類型的對象都可以接收同樣的消息

2.3 每個對象都有一個接口

創建抽象數據類型是面向對象程序設計的基本概念之一。

2.4 每個對象都提供服務

將對象作爲服務提供者看待.

開發者的目標就是創建能夠提供理想的服務來解決問題的一系列對象.

2.5 被隱藏的具體實現

將程序開發人員按照角色分爲類創建者和客戶端程序員.

客戶端程序員的目標是收集各種用來實現快速開發的類.

類創建者的目標是構建類,這種類只向客戶端程序員暴露必須的部分.隱藏的部門類創建者可以任意修改.

java用三個關鍵字在類內部設定邊界:

public 表示任何人都可以使用.

private表示除了類創建者和類型內部方法之外任何人都不可以訪問.

protected和private關鍵字相同,但繼承的類可以訪問.

默認訪問權限包訪問權限.

2.6 複用具體實現

在建立新類時優先考慮組合。

2.7 繼承

在圖形上從導出類指向基類。
使用繼承的兩種方式:直接在導出類中添加新方法,改變現有基類的方法行爲稱爲覆蓋方法。

2.8 伴隨多態的可互換對象

面向對象程序設計語言使用了後期綁定的概念,當向對象發生消息時,被調用的代碼直到運行時才能確定。java中有一小段代碼用於計算方法體的地址。
java中動態綁定是默認的行爲。
把導出類看作它的基類的過程稱爲向上轉型。

2.9 單根繼承結構

單根繼承結構保證所有對象都繼承自單一的基類,都具備某些功能.所有對象都很容易在堆上創建.

2.10 容器

容器在任何需要時都可以擴充自己以容納你置於其中的所有東西.

List用來存儲序列.

Map用來建立對象之間的關聯.

Set每個對象類型只持有一個.

參數化類型就是一個編譯器可以自動定製作用於特定類型上的類,在Java中稱爲範型.

2.11 對象的創建和生命期

對象創建的兩種方式:1. 將對象置於堆棧或限域變量或靜態存儲內實現,2. 在被稱爲堆的內存池中動態地創建對象.

java採用動態內存分配方式,使用new關鍵字創建對象.

java使用垃圾回收器機制,自動發現不再使用的對象,並銷燬它.

2.12 異常處理:處理錯誤

異常是一種對象,它從出錯地點被拋出,並被專門設計的異常處理器獲得,執行不同的路徑. 

2.13 併發編程

併發的基本概念:同一時刻處理多個任務的思想。在程序中,彼此獨立運行的部分稱之爲線程。併發的隱患共享資源。

2.14 Java與Internet

客戶/服務器計算技術:信息存儲池的位置集中於中央。
服務器提供數據和對用戶請求進行處理。
客戶端編程增加交互性。插件,腳本語言(不需要插件的腳本語言JavaScript).
Web服務器處理請求的兩種方式,1 服務器將結果進行格式排序,使其成爲一個HTML頁面,瀏覽器直接顯示,2. 服務器將原始數據發給瀏覽器,瀏覽器在客戶端進行格式編排,這樣更快,並且服務器負載更小。
java服務器端編程:可以使用Java編寫servlet的程序來實現,JSP爲servlet的衍生物。

3. 動態

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