第2章 物件導向技術導論



Similar documents
6-1-1極限的概念

寫 作 背 景 導 讀 [98] L Lyman Frank Baum

Microsoft Word doc

Microsoft Word - 第四章.doc

授 課 老 師 章 節 第 一 章 教 學 教 具 間 3 分 鐘 粉 筆 CNC 銑 床 教 學 內 容 CNC 銑 床 之 基 本 操 作 教 材 來 源 數 值 控 制 機 械 實 習 Ⅰ 1. 了 解 CNC 銑 床 的 發 展 2. 了 解 CNC 銑 床 刀 具 的 選 用 3. 了 解

所 3 學 分 課 程, 及 兩 門 跨 領 域 課 程 共 6 學 分 以 上 課 程 學 生 在 修 課 前, 必 須 填 寫 課 程 修 課 認 定 表, 經 班 主 任 或 指 導 教 授 簽 名 後 始 認 定 此 課 程 學 分 ) 10. 本 規 章 未 盡 事 宜, 悉 依 學 位

Microsoft PowerPoint - 資料庫正規化(ccchen).ppt

<4D F736F F D20B3E6A4B830312D2D2DBCC6BD75BB50BEE3BCC6AABAA55BB4EEB942BAE22E646F6378>

證 券 簡 易 下 單 :2121 證 券 簡 易 下 單 1. 主 工 具 列 的 視 窗 搜 尋 器 直 接 輸 入 點 擊 主 選 單 證 券 專 區 下 單 特 殊 下 單 2121 證 券 簡 易 下 單 畫 面 說 明 1. 下 單 區 2. 個 股 行 情 資 訊 與

第 6. 節 不 定 積 分 的 基 本 公 式 我 們 可 以 把 已 經 知 道 反 導 函 數 之 所 有 函 數 都 視 為 不 定 積 分 的 基 本 公 式 基 本 公 式 涵 蓋 的 範 圍 愈 大, 我 們 求 解 積 分 就 愈 容 易, 但 有 記 憶 不 易 的 情 事 研 讀

二 兒 歌 選 用 情 形 ( ) 2 ( ) ( )

目 錄 壹 題 目 1: 新 增 商 品 ( 商 品 名 稱 為 玉 井 芒 果 乾 禮 盒 )... 3 貳 題 目 2: 新 增 商 品 ( 商 品 名 稱 為 紅 磚 布 丁 精 選 禮 盒 )... 5 參 題 目 3: 新 增 商 品 ( 商 品 名 稱 為 晶 鑽 XO 醬 禮 盒 ).

四 修 正 幼 兒 園 師 資 類 科 應 修 學 分 數 為 四 十 八 學 分, 並 明 定 學 分 數 抵 免 之 相 關 規 定 及 規 範 修 習 幼 兒 園 教 育 專 業 課 程 之 最 低 年 限 ( 修 正 條 文 第 五 條 ) 五 發 給 修 畢 師 資 職 前 教 育 證 明

16

目 錄 項 目 內 容 頁 數 1 手 機 要 求 3 2 登 記 程 序 3 3 登 入 程 序 4 4 輸 入 買 賣 指 示 6 5 更 改 指 示 14 6 取 消 指 示 18 7 查 詢 股 票 結 存 21 8 查 詢 買 賣 指 示 23 9 更 改 密 碼 查 詢 股

肆 研 究 方 法 進 行 本 研 究 前, 我 們 首 先 對 研 究 中 所 用 到 名 詞 作 定 義 定 義 : 牌 數 : 玩 牌 時 所 使 用 到 撲 克 牌 數 次 數 : 進 行 猜 心 術 遊 戲 時, 重 複 分 牌 次 數 數 : 進 行 猜 心 術 遊 戲 時, 每 次 分

章節

Microsoft Word - ch07

研究一:n人以『剪刀、石頭、布』猜拳法猜拳一次,決定一人勝

實德證券網上交易系統示範

75 叁 積 木 遊 戲 的 教 學 功 能 一 促 進 體 能 發 展 二 發 展 社 會 技 巧 Ramsey 1991 Beaty 1995 ( ) ( ) ( ) 三 學 習 情 緒 處 理 國 教 之 友 第 59 卷 第 3 期 19

PowerPoint 簡報

五 四 五 說 ( 代 序 ) 李 澤 厚 劉 再 復 I I II IV V VII 第 一 篇 五 四 新 文 化 運 動 批 評 提 綱 附 論 一 中 國 貴 族 精 神 的 命 運 ( 提 綱 )

關 於 教 育 部 學 習 拍 立 得 教 育 部 於 (103) 年 度 整 合 各 縣 市 政 府 部 屬 機 構 大 學 及 民 間 的 數 位 資 源 與 服 務, 依 不 同 類 型, 分 別 匯 集 於 教 育 大 市 集 教 育 百 科 教 育 媒 體 影 音 教 育 部 學 習 拍

二零零六至零七年施政報告

NCKU elearning Manual

101年度社會福利方案 網路線上操作手冊

Microsoft PowerPoint - F263-CH10.ppt [相容模式]

前 項 第 三 款 所 定 有 機 農 產 品 及 有 機 農 產 加 工 品 驗 證 基 準, 如 附 件 一 第 七 條 驗 證 機 構 受 理 有 機 農 產 品 及 有 機 農 產 加 工 品 之 驗 證, 應 辦 理 書 面 審 查 實 地 查 驗 產 品 檢 驗 及 驗 證 決 定 之

內 政 統 計 通 報

Microsoft Word - Draft circular on Sub Leg Apr (chi)_Traditional

CONTENTS 訓 練 內 容 設 計 法 056 淡 季 期 的 訓 練 058 旺 季 期 的 訓 練 060 針 對 爬 坡 賽 的 訓 練 內 容 062 賽 後 的 資 料 分 析 PART4/ 鏑 木 毅 先 生 的 建 言 活 用 於 越 野 路 跑 的 心 跳 訓

(Microsoft Word - MOODLE990201\266i\266\245\244\342\245U )

BSP 烤箱 - 封面-2

HSBC Holdings plc Interim Report Chinese

第二組掃描器規範書

Layout 1

<30332EAAFEA5F3A440A142A447A142A454A142A57CA147BEC7A5CDB14DB77EC3D2B7D3BEC7B2DFA661B9CF2E786C73>

128 提 示 樞 紐 分 析 表 的 用 途 樞 紐 分 析 表 是 指 可 以 用 來 快 速 合 併 和 比 較 大 量 資 料 的 互 動 式 表 格, 透 過 它 可 以 詳 細 分 析 數 值 資 料, 特 別 適 用 於 下 列 情 況 : 需 要 從 含 有 大 量 資 料 的 清

壹、組織編制 代碼:C0101意見反映

???T????????

格 成 績 證 明 第 六 條 第 七 條 本 系 大 四 課 程 中 規 劃 日 本 韓 國 越 南 專 題 研 究, 學 生 需 於 大 四 時 修 習 該 課 程, 並 於 規 定 期 間 內 提 出 專 題 報 告, 取 得 合 格 成 績 證 明 本 系 規 定 學 生 畢 業 時 需 取

骨 折 別 日 數 表 1. 鼻 骨 眶 骨 ( 含 顴 骨 ) 14 天 11. 骨 盤 ( 包 括 腸 骨 恥 骨 坐 骨 薦 骨 ) 40 天 2. 掌 骨 指 骨 14 天 12. 臂 骨 40 天 3. 蹠 骨 趾 骨 14 天 13. 橈 骨 與 尺 骨 40 天 4. 下 顎 ( 齒

教 師 相 關 ( 升 等, 依 業 務 需 002 交 通 管 科 評 鑑, 評 量, 徵,C031, 聘, 各 項 考 試 委 C051,C054, 員, 通 訊 錄 等 ),C057, C058,C063 各 項 會 議 紀 錄 依 業 務 需 C001,, 002,130 交 通 管 科 (

PROSPECT EXPLORATION 壹 前 言 第 9 卷 第 2 期 中 華 民 國 100 年 2 月


目 錄 頁 1. 歡 迎 使 用 網 上 預 約 面 談 訪 問 系 統 新 用 戶 新 用 戶 登 入 帳 戶 程 序 啟 動 網 上 預 約 面 談 訪 問 帳 戶 核 對 帳 戶 的 地 址 資 料

e-Submission System Quick Reference Guide for Publication Related Matters (Chinese version)

人 們 在 為 生 活 空 間 中 的 物 品 選 擇 色 彩 時, 不 自 覺 地 會 反 應 出 大 腦 對 色 彩 的 解 釋, 設 計 師 若 能 掌 握 色 彩 所 隱 藏 的 訊 息, 便 可 以 充 分 利 用 並 創 造 出 極 具 魅 力 的 產 品 視 覺 對 知 覺 的 影 響

Microsoft PowerPoint - 104年說明會簡報-final-0923.ppt [相容模式]

校 長 遴 選 者 就 相 關 遴 選 事 項, 有 程 序 外 之 接 觸 遴 選 會 委 員 在 任 期 間 因 故 無 法 執 行 任 務 或 有 不 適 當 之 行 為 者, 由 各 該 主 管 機 關 解 聘 之 ; 其 缺 額, 依 第 一 項 至 第 五 項 規 定 聘 ( 派 ) 委

奇 妙 的 24 摘 要 從 撲 克 牌 中 隨 機 抽 取 4 張 牌 可 以 有 1820 種 牌 組, 在 這 1820 種 牌 組 中, 有 1362 組 可 經 由 四 則 運 算 的 方 式, 算 出 24 點, 有 458 組 無 解 快 速 求 解 的 方 法 有 相 加 法 因 數

長跨距暨挑高建築特殊結構系統之調查分析

如何正確使用自己所擁有的正版音樂光碟?

支 持 機 構 : 社 會 文 化 司 主 辦 機 構 : 澳 門 學 聯 澳 門 青 年 研 究 協 會 電 話 : 傳 真 : 網 址 : 報 告 主 筆 : 李 略 博 士 數 據 錄

廿一世紀集居環境規劃與建築型態塑造之研究

課 程 簡 介 第 一 章 基 本 電 路 理 論 第 二 章 半 導 體 物 理 與 pn 接 面 二 極 體 元 件 分 析 第 三 章 二 極 體 電 路 分 析

sle cover 1

本 題 各 點 彼 此 均 有 相 互 關 聯, 作 答 不 完 整, 將 影 響 各 評 分 點 之 得 分, 請 注 意 檔 名 儲 存 錯 誤, 該 題 一 律 0 分 計 算 深 淺 圖 表.xlsx 請 依 下 方 題 目 敘 述 操 作 ( 佔 總 分 :) 儲 存 格 範

連江縣政府所屬學校兼任代課及代理教師聘任實施要點(草案)

包 裝 維 生 素 礦 物 質 類 之 錠 狀 膠 囊 狀 食 品 營 養 標 示 應 遵 行 事 項 一 本 規 定 依 食 品 安 全 衛 生 管 理 法 第 二 十 二 條 第 三 項 規 定 訂 定 之 二 本 規 定 所 稱 維 生 素 礦 物 質 類 之 錠 狀 膠 囊 狀 食 品, 指


Microsoft Word - 雲林區_免試平台_國中模擬選填_操作手冊.doc

《數學奠基活動模組示例》

1. 安 裝 1.1 手 機 端 安 裝 檔 (cab 檔 ) 請 您 將 下 載 的 cab 檔 案 複 製 到 手 機 內 任 一 資 料 夾, 在 手 機 上 點 擊 cab 檔 案 後 即 可 開 始 安 裝 點 擊 本 檔 案 即 可 開 始 安 裝 請 於 您 的 手 機 上 繼 續 安


桃園市104年國民中學新進教師甄選各校複試方式及需求表

投影片 1

「家加關愛在長青」計劃完成表現及評估報告

教育實習問與答:

一、 資格條件:

2 飲 料 調 製 丙 級 技 術 士 技 能 檢 定 必 勝 寶 典 Beverage Modulation Preparation 應 考 綜 合 注 意 事 項 A1 A2 A3 A4 A5 A6 B7 B8 B9 B10 B11 B12 C13

LP 電腦週邊設備用品_第一組印表機規範書

55202-er-ch03.doc

自 動 行 車 監 控 系 統 除 能 提 供 捷 運 系 統 全 自 動 化 無 人 駕 駛 環 境 外, 更 扮 演 著 確 保 行 車 安 全 及 服 務 品 質, 提 升 系 統 運 能 的 重 要 角 色 自 動 行 車 保 護 系 統

Microsoft Word - 立法會十四題附件.doc

目 錄 一 系 統 登 入... 2 ( 一 ) 系 統 登 入 畫 面... 2 ( 二 ) 首 次 登 入 請 先 註 冊... 3 ( 三 ) 忘 記 單 位 帳 號... 8 ( 四 ) 忘 記 密 碼 ( 五 ) 健 保 卡 更 換 ( 六 ) 重 寄 確 認 信.

修 課 特 殊 規 定 : 一 法 律 系 學 生 最 低 畢 業 學 分 128;101 學 年 度 修 讀 法 律 系 雙 主 修 學 生 應 修 畢 法 律 專 業 目 64 學 分 ( 限 修 習 本 校 法 律 系 開 設 課 程, 不 得 以 原 學 系 或 外 校 課 程 抵 免 -

100 學 年 度 科 技 校 院 四 年 制 及 專 科 學 校 二 年 制 日 間 部 聯 合 登 記 分 發 入 學 各 校 系 科 組 學 程 總 成 績 統 計 表 ( 一 般 生 ) 類 別 代 碼 學 校 名 稱 系 科 組 學 程 名 稱 01 機 械 066 正 修 科 技 大 學

簽 呈

<4D F736F F F696E74202D20B2C431B860C2B2B3F82DC2BEB77EBEC7AED5B77CAD70BEC7BDD2B57BBAF5AD6EA65DC0B3B0EABBDAB77CAD70B7C7AB AE74B2A7A4C0AA E BACDBAE65BCD2A6A15D>

1

調 查 背 景 去 年 年 尾 奶 粉 供 應 緊 張 有 零 售 商 大 幅 抬 價 的 報 導 和 投 訴 在 每 兩 個 月 進 行 的 定 期 嬰 幼 兒 奶 粉 價 格 調 查 以 外, 在 農 曆 新 年 前 後, 特 別 加 強 奶 粉 供 應 和 價 格 的 調 查 工 作 2

untitled

行政院金融監督管理委員會全球資訊網-行政院金融監督管理委員會

目 錄

瑞興銀行

節 數 內 容 網 頁 設 計 (1): 利 用 Google Sites 制 作 簡 單 文 字 網 頁, 連 結 不 同 版 面 網 頁 設 計 (2): 在 文 字 網 頁 上 加 插 圖, 上 載 網 頁 影 片 設 計 (1): 利 用 Windows Movie

iPhone版操作手冊990421

CHRISTIAN ALLIANCE CHENG WING GEE COLLEGE

C CH4.tpf

ART_RAE16_ticket_cn_p.1

life930106

國立屏東師範學院教育心理與輔導研究所

幼教數學與國小一年級數學新綱之能力指標分析

1

代 理 人 者, 由 常 務 董 事 或 董 事 互 推 一 人 代 理 之 第 八 條 本 公 司 董 事 會 召 開 時, 總 經 理 室 應 備 妥 相 關 資 料 供 與 會 董 事 隨 時 查 考 召 開 董 事 會, 得 視 議 案 內 容 通 知 相 關 部 門 或 子 公 司 之 人

268 別 行 政 區 所 以, 全 國 人 民 代 表 大 會 根 據 憲 法 第 31 條 規 定 設 立 了 特 別 行 政 區 沒 有 憲 法 第 31 條 的 規 定, 就 沒 有 特 別 行 政 區 制 度 存 在 的 合 法 性 基 礎 62 正 如 上 述, 憲 法 為 特 別 行

會 員 專 區 使 用 手 冊 目 錄 一 基 本 介 紹 會 員 專 區 登 入 位 置 主 畫 面 與 網 站 架 構 : 功 能 導 覽 列 說 明 :... 3 二 DOI 查 詢 與 維 護... 4 三 DOI 註 冊 期 刊 類 型...

第一章 緒論

Transcription:

第 2 章 物 件 導 向 技 術 導 論 2-1 程 式 設 計 方 法 2-2 抽 象 資 料 型 態 2-3 物 件 導 向 的 思 維 2-4 物 件 導 向 技 術 的 三 大 觀 念 2-5 物 件 導 向 程 式 語 言 2-1 程 式 設 計 方 法 2-1-1 非 結 構 化 程 式 設 計 2-1-2 程 序 式 與 結 構 化 程 式 設 計 2-1-3 模 組 化 程 式 設 計 2-1-4 物 件 導 向 程 式 設 計 1/54 2/54 2-1 程 式 設 計 方 法 - 說 明 2-1-1 非 結 構 化 程 式 設 計 一 般 來 說, 初 學 程 式 設 計 者 在 逐 漸 建 立 深 厚 的 程 式 設 計 功 力 前, 學 習 程 式 設 計 通 常 都 會 經 歷 數 個 學 習 過 程, 即 四 種 程 式 設 計 技 術 (Programming Techniques), 或 稱 為 程 式 設 計 風 格 (Programming Styles), 如 下 所 示 : 非 結 構 化 程 式 設 計 (Unstructured Programming) 程 序 式 程 式 設 計 (Procedural Programming) 與 結 構 化 程 式 設 計 (Structured Programming) 模 組 化 程 式 設 計 (Modular Programming) 物 件 導 向 程 式 設 計 (Object-Oriented Programming) 早 期 BASIC 機 器 語 言 或 組 合 語 言 建 立 的 程 式, 很 多 仍 然 是 使 用 非 結 構 化 程 式 設 計 來 建 立 程 式 碼 對 於 C C++ 或 Java 語 言 來 說, 所 謂 非 結 構 化 程 式 設 計 是 指 初 學 程 式 設 計 時, 不 論 幾 列 的 小 程 式 或 數 百 列 程 式 碼 的 大 程 式, 都 只 有 一 個 main() 主 程 式 且 不 包 含 任 何 流 程 控 制 敘 述 的 情 況 非 結 構 化 程 式 設 計 的 程 式 碼 是 使 用 線 性 方 式 來 依 序 的 執 行, 如 右 圖 所 示 : 缺 點 : p.2-3 3/54 4/54 1

2-1-2 程 序 式 與 結 構 化 程 式 設 計 2-1-3 模 組 化 程 式 設 計 程 序 式 程 式 設 計 是 將 程 式 中 重 複 的 程 式 片 斷 抽 出 成 為 程 序 (Procedures, 或 稱 為 Subroutine Routine) 或 函 數 (Functions), 也 就 是 一 段 執 行 特 定 功 能 的 程 式 區 塊 程 式 因 為 已 經 分 割 成 程 序, 所 以 在 main() 主 程 式 的 程 式 碼 只 是 依 序 呼 叫 不 同 程 序 或 函 數 的 程 序 呼 叫 (Procedure Call) 程 式 是 使 用 流 程 控 制 連 接 程 序, 即 目 前 程 式 設 計 最 常 使 用 的 結 構 化 程 式 設 計, 屬 於 程 序 式 程 式 設 計 的 子 集, 如 右 圖 所 示 : 模 組 化 程 式 設 計 是 程 序 式 程 式 設 計 的 下 一 個 階 段, 為 了 能 夠 重 複 使 用 程 序 式 程 式 設 計 分 割 建 立 的 程 序, 我 們 可 以 將 相 同 功 能 的 程 序 或 函 數 結 合 在 一 起 建 立 成 獨 立 的 模 組 (Modules), 模 組 是 處 理 指 定 功 能 的 子 程 式, 如 下 圖 所 示 : 5/54 6/54 2-1-4 物 件 導 向 程 式 設 計 2-2 抽 象 資 料 型 態 模 組 化 程 式 設 計 是 物 件 導 向 程 式 設 計 的 前 身, 只 是 沒 有 提 供 繼 承 和 多 形 等 物 件 導 向 觀 念 物 件 導 向 程 式 設 計 是 一 種 更 符 合 人 性 化 的 程 式 設 計 方 法, 將 原 來 專 注 於 問 題 的 分 解, 轉 換 成 了 解 問 題 本 質 參 與 的 東 西, 也 就 是 物 件 (Object), 如 下 圖 所 示 : 2-2-1 程 序 或 函 數 抽 象 化 2-2-2 資 料 抽 象 化 2-2-3 抽 象 資 料 型 態 2-2-4 抽 象 資 料 型 態 與 物 件 導 向 7/54 8/54 2

2-2 抽 象 資 料 型 態 物 件 導 向 程 式 設 計 的 精 神 是 資 料 抽 象 化, 透 過 抽 象 資 料 型 態 建 立 電 腦 與 真 實 世 界 之 間 的 橋 樑, 描 述 和 模 擬 真 實 世 界 的 實 體, 即 東 西, 簡 單 的 說, 物 件 導 向 程 式 設 計 就 是 一 種 抽 象 資 料 型 態 的 程 式 設 計 抽 象 化 (Abstraction) 的 主 要 目 的 是 定 義 問 題 的 二 個 屬 性, 如 下 所 示 : 資 料 (Data): 問 題 影 響 的 資 料 操 作 (Operators): 問 題 產 生 的 操 作 2-2-1 程 序 或 函 數 抽 象 化 - 由 上 而 下 的 設 計 方 法 程 序 或 函 數 抽 象 化 (Procedure Abstraction or Function Abstraction) 主 要 是 針 對 傳 統 由 上 而 下 的 設 計 方 法, 將 問 題 分 割 成 一 個 個 子 工 作 由 上 而 下 的 設 計 方 法 (Top-down Design) 是 以 程 序 為 單 位 來 切 割 工 作, 也 就 是 所 謂 的 程 序 式 程 式 設 計 (Procedural Design) 由 上 而 下 的 設 計 方 法 是 一 種 循 序 漸 進 了 解 問 題 的 方 法 筆 者 準 備 使 用 一 個 實 例 來 說 明 分 割 工 作 的 過 程 9/54 10/54 2-2-1 程 序 或 函 數 抽 象 化 - 範 例 例 如 : 目 前 有 一 個 工 作 是 繪 出 房 屋 的 圖 形, 房 屋 圖 形 的 繪 圖 工 作 不 是 一 筆 畫 就 可 以 完 成, 所 以, 我 們 可 以 分 割 成 多 個 小 工 作 來 分 別 處 理, 以 由 上 而 下 的 設 計 方 法 來 了 解 整 個 繪 圖 工 作 的 問 題 2-2-1 程 序 或 函 數 抽 象 化 - 步 驟 1 從 房 屋 繪 圖 工 作 可 以 粗 分 為 三 個 小 工 作, 如 下 所 示 : 繪 出 屋 頂 和 外 框 繪 出 窗 戶 繪 出 門 Call Draw Outline Call Draw Windows Call Draw Door 依 據 上 述 工 作 分 割, 可 以 建 立 各 分 割 小 工 作 之 間 的 模 組 架 構, 如 下 圖 所 示 : 11/54 12/54 3

2-2-1 程 序 或 函 數 抽 象 化 - 步 驟 2 將 第 一 個 小 工 作 繪 出 屋 頂 和 外 框 (Draw Outline) 再 次 進 行 分 割 成 二 個 小 工 作, 如 下 所 示 : 繪 出 屋 頂 繪 出 房 屋 的 外 框 Call Draw Roof Call Draw House Frame 2-2-1 程 序 或 函 數 抽 象 化 - 其 他 步 驟 現 在, 我 們 只 需 重 複 上 述 分 析, 一 步 一 步 向 下 進 行 分 割 工 作, 例 如 : 因 為 窗 戶 有 2 個, 所 以 繪 出 窗 戶 可 以 分 為 繪 出 窗 戶 1 和 繪 出 窗 戶 2 ; 繪 出 門 可 以 分 為 繪 出 門 框 和 繪 出 門 把 最 後, 將 問 題 分 割 成 一 個 個 小 問 題 後, 每 一 個 小 問 題 就 是 一 個 程 序 或 函 數, 只 需 完 成 這 些 程 序 或 函 數 就 可 以 解 決 繪 出 房 屋 的 問 題 13/54 14/54 2-2-1 程 序 或 函 數 抽 象 化 - 程 序 或 函 數 抽 象 化 ( 說 明 ) 在 由 上 而 下 設 計 方 法 分 割 的 程 序 或 函 數 之 中, 我 們 並 不 用 考 量 實 作 的 程 式 碼, 只 需 定 義 好 程 序 或 函 數 使 用 介 面 的 參 數 和 傳 回 值, 將 它 視 為 一 個 黑 盒 子, 換 句 話 說, 程 式 可 以 使 用 任 何 符 合 介 面 的 程 序 或 函 數 來 取 代, 稱 為 程 序 或 函 數 抽 象 化 2-2-1 程 序 或 函 數 抽 象 化 - 程 序 或 函 數 抽 象 化 ( 圖 例 ) 例 如 : 前 述 繪 出 房 屋 問 題, 我 們 可 以 將 問 題 分 解 成 一 個 個 繪 圖 操 作 的 程 序, 其 最 後 結 果 如 下 圖 所 示 : 15/54 16/54 4

2-2-2 資 料 抽 象 化 2-2-3 抽 象 資 料 型 態 - 說 明 資 料 抽 象 化 (Data Abstraction) 是 一 種 方 法 將 基 本 資 料 型 態 的 變 數 組 合 成 複 合 資 料 (Compound Data), 使 用 相 關 函 數 來 處 理 複 合 資 料, 以 便 隱 藏 實 際 複 合 資 料 的 儲 存 方 式 一 般 來 說, 程 式 語 言 如 果 沒 有 支 援 下 一 節 的 抽 象 資 料 型 態, 通 常 就 是 使 用 模 組 化 程 式 設 計 來 建 立 資 料 抽 象 化 例 如 : 使 用 模 組 化 程 式 設 計 建 立 堆 疊 (Stacks) 資 料 結 構, 如 下 圖 所 示 : 抽 象 資 料 型 態 (Abstract Data Type,ADT) 是 使 用 資 料 抽 象 化 的 方 法 建 立 的 自 訂 資 料 型 態, 抽 象 資 料 型 態 包 含 資 料 和 相 關 操 作, 將 資 料 和 處 理 資 料 的 操 作 一 起 思 考, 結 合 在 一 起, 操 作 就 是 對 外 的 使 用 介 面, 如 下 圖 所 示 : 17/54 18/54 2-2-3 抽 象 資 料 型 態 - 範 例 2-2-4 抽 象 資 料 型 態 與 物 件 導 向 - 說 明 我 們 可 以 將 個 人 基 本 資 料 問 題 抽 象 化 成 Person 模 型, 用 來 模 擬 真 實 世 界 的 人 實 體, 內 含 姓 名 name 地 址 address 和 電 話 號 碼 phone 等 資 料,setPerson() 指 定 個 人 資 料, getname() getaddress() 和 getphone() 取 出 個 人 資 料 的 操 作 Person 抽 象 資 料 型 態, 如 下 圖 所 示 : 物 件 導 向 程 式 設 計 的 精 神 是 資 料 抽 象 化 的 抽 象 資 料 型 態, 即 類 別, 物 件 導 向 是 將 問 題 的 資 料 屬 性 和 資 料 本 身 的 相 關 操 作 一 起 思 考, 不 用 考 量 其 他 資 料 或 不 相 關 操 作, 以 便 建 立 一 個 個 完 善 定 義 的 物 件 (Object) 如 果 將 第 2-2-1 節 的 繪 出 房 屋 範 例 看 成 堆 積 木 遊 戲, 房 屋 可 以 使 用 一 個 個 積 木 來 堆 出, 著 重 於 組 成 房 屋 元 件 的 資 料 抽 象 化, 即 房 屋 是 由 房 頂 窗 戶 門 和 外 框 等 物 件 組 成 19/54 20/54 5

2-2-4 抽 象 資 料 型 態 與 物 件 導 向 - 圖 例 2-2-4 抽 象 資 料 型 態 與 物 件 導 向 - 模 擬 真 實 世 界 簡 單 的 說, 物 件 導 向 程 式 設 計 就 是 在 模 擬 真 實 世 界, 以 便 找 出 解 決 問 題 所 需 的 物 件 集 合 和 其 關 係, 在 物 件 之 間 是 使 用 訊 息 建 立 互 動, 透 過 物 件 集 合 之 間 的 合 作 來 解 決 程 式 問 題, 如 下 所 示 : 程 式 = 物 件 + 訊 息 如 同 車 輛 是 由 成 千 上 萬 個 零 件 所 組 裝, 物 件 導 向 程 式 設 計 可 以 視 為 是 一 種 組 裝 工 作, 將 眾 多 現 成 或 擴 充 功 能 的 物 件 結 合 起 來 21/54 22/54 2-3 物 件 導 向 的 思 維 2-3-1 物 件 2-3-2 類 別 2-3 物 件 導 向 的 思 維 物 件 導 向 技 術 源 於 1960 年 代 的 Simula 程 式 語 言, 它 是 Simulation Language 的 簡 稱, 這 是 一 種 模 擬 語 言, 希 望 使 用 電 腦 程 式 來 模 擬 真 實 世 界 的 各 種 處 理 過 程 物 件 導 向 的 思 維 就 是 我 們 現 實 生 活 的 思 維 方 式, 人 類 自 然 的 思 考 方 式, 其 實 各 位 讀 者 早 已 經 知 道, 而 且 一 直 使 用 它 來 思 考 問 題 23/54 24/54 6

2-3-1 物 件 - 說 明 2-3-1 物 件 - 認 知 的 東 西 物 件 的 英 文 是 Object, 在 此 筆 者 討 論 的 是 現 實 生 活 中 的 物 件, 並 不 是 程 式 中 的 物 件, 物 件 的 英 文 原 意 有 物 體 東 西 對 象 和 目 的 換 句 話 說, 物 件 不 見 的 是 一 種 看 得 到 或 摸 得 到 的 實 體, 它 可 能 只 是 一 個 概 念, 一 種 我 們 可 以 認 知 的 東 西, 如 下 圖 所 示 : 物 件 是 一 種 可 以 認 知 的 東 西 例 如 : 我 們 認 知 一 輛 車, 是 因 為 聯 想 到 : 車 子 是 紅 色 車 子 有 四 個 門 車 子 有 四 個 輪 胎 25/54 26/54 2-3-2 類 別 - 說 明 當 識 別 出 物 件 後, 物 件 導 向 技 術 的 抽 象 化 (Abstraction) 就 是 從 物 件 中 抽 出 共 通 部 分 的 特 徵, 排 除 其 詳 細 部 分, 以 物 件 導 向 技 術 來 說, 就 是 將 物 件 抽 象 化 成 為 類 別 (Class) 2-3-2 類 別 - 範 例 例 如 : 紅 色 汽 車 白 色 貨 車 和 銀 色 休 旅 車 抽 象 化 成 陸 上 交 通 工 具 的 車 輛, 然 後 進 一 步 抽 象 化 成 交 通 工 具, 如 下 圖 所 示 : 27/54 28/54 7

2-4 物 件 導 向 技 術 的 三 大 觀 念 2-4-1 物 件 觀 念 2-4-2 訊 息 觀 念 2-4-3 類 別 觀 念 2-4 物 件 導 向 技 術 的 三 大 觀 念 物 件 導 向 技 術 有 三 大 重 要 觀 念 : 物 件 訊 息 和 類 別, 其 簡 單 說 明 如 下 所 示 : 物 件 : 提 供 資 料 和 處 理 資 料 程 序 的 封 裝 訊 息 : 在 物 件 之 間 的 溝 通 方 式, 可 以 建 立 互 動 和 支 援 多 形 類 別 : 物 件 的 分 類, 可 以 實 作 類 別 架 構 的 繼 承 29/54 30/54 2-4-1 物 件 觀 念 - 物 件 簡 介 2-4-1 物 件 觀 念 - 物 件 的 三 種 特 性 物 件 (Object) 是 物 件 導 向 技 術 的 關 鍵, 以 程 式 角 度 來 說, 它 是 電 腦 用 來 模 擬 現 實 生 活 的 東 西 或 事 件, 也 是 組 成 應 用 程 式 的 元 素 物 件 是 資 料 與 相 關 處 理 資 料 的 程 序 和 函 數 結 合 在 一 起 的 組 合 體 資 料 是 變 數, 程 序 和 函 數 稱 為 方 法 (Methods), 如 下 圖 所 示 : 物 件 導 向 技 術 的 物 件 是 對 應 到 現 實 生 活 的 實 體 或 事 件, 擁 有 三 種 特 性, 如 下 所 示 : 狀 態 (State): 物 件 所 有 屬 性 (Attributes) 目 前 的 狀 態 值, 屬 性 是 儲 存 物 件 的 狀 態, 可 以 簡 單 到 只 是 一 個 布 林 值 變 數, 也 可 能 是 另 一 個 物 件 例 如 : 車 子 的 車 型 排 氣 量 色 彩 和 自 排 或 手 排 等 屬 性, 以 程 式 來 說, 也 就 是 資 料 部 分 的 變 數 行 為 (Behavior): 行 為 是 物 件 可 見 部 分 提 供 的 服 務, 也 就 是 塑 模 所 抽 象 化 的 操 作, 可 以 做 什 麼 事? 程 式 語 言 是 使 用 程 序 或 函 數 來 實 作 行 為, 稱 為 方 法, 例 如 : 車 子 可 以 發 動 停 車 加 速 和 換 擋 等 識 別 字 (Identity): 每 一 個 物 件 都 擁 有 獨 一 無 二 的 識 別 字 來 識 別 它 是 不 同 的 物 件 例 如 : 使 用 物 件 參 考 (Reference) 作 為 物 件 的 識 別 字, 即 物 件 實 際 儲 存 的 記 憶 體 位 址 31/54 32/54 8

2-4-1 物 件 觀 念 - 物 件 的 範 例 物 件 可 以 模 擬 真 實 生 活 的 東 西, 例 如 :Car1 物 件 模 擬 一 輛 1800cc 紅 色 四 門 的 Sentra 車 子 Car1 是 物 件 的 識 別 字, 使 用 Car1 識 別 字 就 可 以 在 眾 多 模 擬 其 他 車 輛 的 Car2 Car3 Car4. 物 件 中, 識 別 出 是 哪 一 輛 車 輛 物 件 2-4-1 物 件 觀 念 - 組 合 物 件 組 合 物 件 (Composite Object) 是 指 物 件 的 屬 性 是 另 一 個 物 件, 例 如 : 上 述 Car1 物 件 door 是 整 數 的 車 門 數, 如 果 是 車 門 Door 物 件 時,Car1 物 件 就 是 組 合 物 件 33/54 34/54 2-4-2 訊 息 觀 念 - 訊 息 簡 介 物 件 可 以 模 擬 現 實 生 活 的 東 西, 但 是 現 實 生 活 中 的 東 西 會 彼 此 互 動 例 如 : 學 生 要 求 成 績 ( 學 生 與 成 績 物 件 ) 約 同 學 看 電 影 ( 同 學 與 同 學 物 件 ) 和 學 生 彈 鋼 琴 ( 學 生 與 鋼 琴 物 件 ) 等 互 動 所 以, 我 們 建 立 的 物 件 之 間 也 需 要 互 動, 使 用 的 媒 介 就 是 訊 息 (Messages) 物 件 是 使 用 訊 息 來 模 擬 彼 此 之 間 的 互 動, 換 句 話 說, 訊 息 是 物 件 之 間 的 溝 通 橋 樑, 可 以 啟 動 另 一 個 物 件 來 執 行 指 定 的 行 為 35/54 2-4-2 訊 息 觀 念 - 訊 息 範 例 例 如 :Student 學 生 物 件 需 要 查 詢 成 績, 學 生 成 績 是 儲 存 在 StudentStatus 物 件, 此 時 Student 物 件 可 以 送 一 個 訊 息 給 StudentStatus 物 件, 告 訴 它 需 要 查 詢 學 生 的 成 績, 如 下 圖 所 示 : 36/54 9

2-4-2 訊 息 觀 念 - 訊 息 傳 回 值 2-4-2 訊 息 觀 念 - 循 序 操 作 ( 說 明 ) 在 接 收 物 件 接 到 訊 息 後, 就 會 執 行 指 定 方 法, 然 後 將 回 應 訊 息 送 回 給 發 送 物 件 ( 也 可 能 沒 有 回 應 ), 稱 為 傳 回 值 (Return Value) 或 回 傳 值, 即 查 詢 結 果 的 學 生 成 績, 如 下 圖 所 示 : 物 件 送 出 的 訊 息, 有 可 能 在 接 收 物 件 執 行 方 法 後 就 產 生 回 應 訊 息, 也 有 可 能 是 觸 發 另 一 個 訊 息, 操 作 會 繼 續 送 出 一 系 列 訊 息 給 其 他 物 件, 以 便 依 序 執 行 各 物 件 的 指 定 方 法 來 完 成 整 個 操 作, 稱 為 循 序 操 作 (Sequential Operation), 具 有 先 後 順 序 差 別 37/54 38/54 2-4-2 訊 息 觀 念 - 循 序 操 作 ( 範 例 ) 2-4-2 名 稱 再 用 : 過 載 overload 例 如 : 學 生 平 均 成 績 的 查 詢 是 送 訊 息 到 Teacher 物 件 執 行 average() 方 法,Teacher 物 件 再 觸 發 另 一 個 訊 息 到 StudentStatus 物 件 查 詢 學 生 的 三 科 成 績, 如 下 圖 所 示 : 在 程 序 式 程 式 設 計 的 程 序 或 函 數 名 稱 是 識 別 字, 如 同 變 數 一 般, 需 要 與 其 他 程 序 或 函 數 擁 有 不 同 的 名 稱 例 如 : 分 別 取 得 2 個 和 3 個 參 數 最 大 值 的 函 數, 我 們 需 要 建 立 2 個 不 同 名 稱 的 maxtwo(a1, a2) 和 maxthree(a1, a2, a3) 函 數 對 於 物 件 導 向 技 術 來 說, 物 件 是 依 接 收 的 訊 息 來 執 行 方 法, 訊 息 內 容 有 三 種 資 訊, 只 需 有 差 異 就 足 以 讓 物 件 辨 識 出 是 不 同 的 方 法, 所 以, 方 法 同 名 也 沒 有 關 係 例 如 : 執 行 Utility 物 件 max() 方 法 的 訊 息, 如 下 所 示 : Utility.max(23, 45); Utility.max(23, 45, 87); Utility.max( a, z ); 39/54 40/54 10

2-4-2 名 稱 再 用 : 多 形 多 形 (Polymorphism) 屬 於 另 一 種 名 稱 再 用, 針 對 同 一 個 訊 息, 不 同 的 物 件 擁 有 不 同 的 反 應, 也 就 是 同 一 個 名 稱 擁 有 不 同 的 操 作 因 為 在 人 類 的 思 維 中, 對 於 同 一 種 工 作, 就 算 對 象 不 同, 也 會 使 用 相 同 名 稱 的 操 作, 如 右 圖 所 示 : 2-4-3 類 別 觀 念 - 類 別 簡 介 在 第 2-4-1 節 我 們 模 擬 不 同 車 輛 的 Car1 Car2 Car3 Car4 物 件, 因 為 物 件 都 擁 有 相 同 的 屬 性 和 行 為, 只 是 狀 態 不 同 簡 單 的 說, 這 些 物 件 屬 於 同 一 類 物 件, 所 以 可 以 建 立 名 為 Car 的 範 本 來 建 立 這 些 物 件, 如 同 工 廠 依 照 藍 圖 製 造 車 輛, 此 範 本 就 是 類 別, 屬 於 同 一 類 別 的 物 件 即 該 類 別 的 實 例 (Instance), 也 稱 為 副 本 類 別 也 可 以 想 像 成 扮 演 的 角 色 例 如 : 模 擬 教 室 上 課, 在 同 一 間 教 室 共 有 30 人, 其 中 1 位 是 老 師, 其 他 是 學 生 換 句 話 說, 如 果 每 一 個 人 是 一 個 物 件,30 個 物 件 可 以 進 一 步 分 類 成 屬 於 Teacher 類 別 和 Student 類 別 的 物 件 集 合, 也 就 是 哪 些 物 件 扮 演 老 師 ; 哪 些 物 件 是 學 生 41/54 42/54 2-4-3 類 別 觀 念 - 類 別 是 物 件 的 藍 圖 2-4-3 類 別 觀 念 - 類 別 架 構 : 繼 承 類 別 是 一 種 抽 象 資 料 型 態, 其 目 的 是 建 立 物 件, 使 用 類 別 建 立 的 物 件 稱 為 類 別 的 實 例 (Instance) 例 如 : 使 用 Student 類 別 建 立 29 位 Student 物 件, 這 些 物 件 和 類 別 擁 有 相 同 的 屬 性 和 行 為, 只 是 狀 態 值 不 同, 即 物 件 的 變 數 值 不 同 例 如 : 一 位 學 生 的 姓 名 name 是 陳 會 安, 另 一 位 是 江 小 魚, 如 下 圖 所 示 : 在 前 面 的 例 子 中, 學 生 和 老 師 都 是 人, 換 言 之, 我 們 可 以 先 定 義 Person 類 別 來 模 擬 人 類, 然 後 擴 充 Person 類 別 建 立 Student 和 Teacher 類 別 模 擬 學 生 和 老 師, 稱 為 繼 承 (Inheritance), 如 右 圖 所 示 : 43/54 44/54 11

2-4-3 類 別 觀 念 - 多 重 繼 承 如 果 父 類 別 不 只 一 個, 即 同 時 繼 承 多 個 父 類 別, 稱 為 多 重 繼 承 (Multiple Inheritance), 如 下 圖 所 示 : 45/54 2-4-3 類 別 觀 念 - 類 別 關 係 ( 說 明 ) 類 別 關 係 (Relationships) 是 指 不 同 類 別 之 間 的 關 係 例 如 : 繼 承 是 一 種 Is-a 的 類 別 關 係,UML 稱 為 一 般 關 係 (Gereralization) 結 合 關 係 (Association) 是 在 建 立 類 別 之 間 互 通 訊 息 的 管 道, 一 種 類 別 真 正 擁 有 指 標 指 向 其 他 物 件 的 類 別 關 係, 其 他 物 件 為 其 屬 性 另 外 還 有 強 度 更 強 的 結 合 關 係, 稱 為 成 品 和 零 件 (Whole-Part), 即 Partof 和 Has-a 關 係 46/54 2-4-3 類 別 觀 念 - 類 別 關 係 ( 圖 例 ) 2-4-3 類 別 觀 念 - 類 別 關 係 ( 圖 例 說 明 ) Part-of 和 Has-a 關 係 的 說 明, 如 下 所 示 : Part-of 關 係 : 指 此 類 別 是 其 他 類 別 的 零 件, 以 上 圖 為 例 Wheel 車 輪 和 Driving Computer 行 車 電 腦 是 Car 車 類 別 的 零 件 Has-a 關 係 : 相 反 於 Part-of 關 係,Car 類 別 Has-a 擁 有 Wheel 和 Driving Computer 類 別 47/54 48/54 12

2-4-3 類 別 觀 念 - 抽 象 類 別 2-5 物 件 導 向 程 式 語 言 抽 象 類 別 (Abstract Class) 是 一 種 不 能 完 全 代 表 物 件 的 類 別, 抽 象 類 別 並 不 能 建 立 實 例, 只 是 擁 有 眾 多 類 別 的 共 同 部 分, 其 主 要 目 的 是 作 為 其 他 類 別 的 父 類 別 例 如 : 哺 乳 類 動 物 的 分 類, 如 右 圖 所 示 : 2-5-1 物 件 導 向 程 式 語 言 的 特 點 2-5-2 常 用 的 物 件 導 向 程 式 語 言 49/54 50/54 封 裝 2-5-1 物 件 導 向 程 式 語 言 的 特 點 - 封 裝 封 裝 (Encapsulation) 是 將 資 料 和 處 理 資 料 的 程 序 與 函 數 組 合 起 來 建 立 物 件 在 C++ C# 和 Java 語 言 定 義 物 件 是 使 用 類 別 (Class), 內 含 屬 性 和 方 法, 屬 於 一 種 抽 象 資 料 型 態 (Abstract Data Type), 換 句 話 說, 就 是 替 程 式 語 言 定 義 新 的 資 料 型 態 繼 承 2-5-1 物 件 導 向 程 式 語 言 的 特 點 - 繼 承 繼 承 (Inheritance) 是 物 件 的 再 利 用, 當 定 義 一 個 類 別 後, 其 他 類 別 可 以 繼 承 這 個 類 別 的 資 料 和 方 法, 並 且 新 增 或 取 代 繼 承 物 件 的 資 料 和 方 法 51/54 52/54 13

多 形 2-5-1 物 件 導 向 程 式 語 言 的 特 點 - 多 形 多 形 (Polymorphism) 屬 於 物 件 導 向 最 複 雜 的 特 性, 類 別 如 果 需 要 處 理 各 種 不 同 資 料 型 態 時, 並 不 需 要 針 對 不 同 資 料 型 態 來 建 立 不 同 的 類 別, 可 以 直 接 繼 承 基 礎 類 別, 也 就 是 繼 承 此 類 別 建 立 同 名 方 法 來 處 理 不 同 的 資 料 型 態, 因 為 方 法 的 名 稱 相 同, 只 是 程 式 碼 不 同, 所 以 也 稱 為 同 名 異 式 2-5-2 常 用 的 物 件 導 向 程 式 語 言 最 早 的 物 件 導 向 程 式 語 言 是 Simula, 這 是 在 1960 年 代 末 期 Norweigian Computing Center 開 發 的 程 式 語 言, 接 著 是 1970 年 代 由 Xerox Palo Alto 研 發 中 心 開 發 的 Smalltalk 語 言, 目 前 比 較 重 要 的 物 件 導 向 程 式 語 言 有 : Java C++.NET 的 C#.NET 的 Visual Basic 53/54 54/54 14