Microsoft Word - chap10.doc
|
|
- 元 吉
- 7 years ago
- Views:
Transcription
1 Inheritance in C++ 我 們 已 介 紹 了 物 件 導 向 程 式 的 第 一 個 主 要 特 性, 即 程 式 可 模 組 化 成 為 類 別 ( 物 件 ), 類 別 具 有 資 料 封 裝 的 特 性 接 下 來 我 們 要 介 紹 物 件 導 向 程 式 的 另 一 個 主 要 特 性, 那 就 是 類 別 具 有 繼 承 的 功 能 繼 承 就 是 重 複 使 用 程 式, 將 現 有 的 類 別 的 屬 性 與 行 為, 加 以 修 改 或 重 新 定 義 (overridden), 即 可 製 作 出 新 的 類 別, 達 到 軟 體 再 使 用 的 目 標 當 我 們 要 產 生 一 個 新 類 別, 如 其 與 某 一 個 已 經 定 義 好 的 類 別 性 質 有 許 多 相 似 之 處, 只 有 部 分 不 同 需 修 改 或 加 強, 我 們 可 以 不 需 以 重 新 製 作 的 方 式 來 定 義 這 個 新 類 別 的 資 料 成 員 與 函 式 成 員, 只 需 使 用 繼 承 的 功 能, 指 定 其 去 繼 承 此 一 已 經 定 義 好 的 類 別 ( 基 本 類 別, base class), 經 由 繼 承 某 基 本 類 別 來 產 生 的 新 類 別 稱 為 其 之 衍 生 類 別 (derived class) 衍 生 類 別 會 繼 承 基 本 類 別 所 有 的 資 料 成 員 與 函 式 成 員, 當 繼 承 而 來 的 函 式 成 員 不 適 於 衍 生 類 別 時, 就 可 以 在 衍 生 類 別 之 定 義 內 將 其 重 新 定 義 (overridden), 並 可 進 一 步 加 入 新 的 成 員 ( 資 料 或 函 式 ), 以 符 合 衍 生 類 別 應 有 的 屬 性 與 行 為 繼 承 功 能 真 正 強 大 之 處, 在 於 我 們 可 以 在 衍 生 類 別 裡 定 義 基 本 類 別 所 沒 有 的 資 料 及 功 能, 或 取 代 改 良 繼 承 自 基 本 類 別 的 功 能, 將 其 功 能 增 強 取 代 和 改 良 換 句 話 說, 衍 生 類 別 通 常 會 增 加 屬 於 他 自 己 的 資 料 成 員 與 函 式 成 員, 故 衍 生 類 別 一 般 都 比 其 基 本 類 別 要 來 的 大, 但 對 的 其 也 變 的 比 較 特 別 化, 所 能 表 示 的 物 件 範 圍 較 為 狹 隘 每 一 個 經 由 繼 承 產 生 的 衍 生 類 別 又 可 以 被 繼 承 成 為 其 下 衍 生 類 別 的 基 本 類 別, 此 外, 對 於 C++, 一 個 衍 生 類 別 可 以 繼 承 一 個 以 上 的 基 本 類 別, 故 C++ 之 類 別 繼 承 為 階 層 式 的 交 錯 樹 狀 架 構 C++ 提 供 了 三 種 繼 承 方 式,public protected 與 private, 我 們 主 要 將 介 紹 public 繼 承 (public inheritance), 並 簡 要 說 明 其 他 兩 種 繼 承 對 於 public 繼 承, 衍 生 類 別 的 每 一 個 物 件 也 可 視 為 其 基 本 類 別 的 物 件, 但 是, 基 本 類 別 的 物 件 則 不 是 衍 生 類 別 的 物 件 對 於 物 件 間 的 關 係, 主 要 有 is a 和 has a 關 係 之 設 計 ; is a 關 係 就 是 繼 承, 衍 生 類 別 之 物 件 也 可 視 為 其 基 本 類 別 的 物 件 ; has a 關 係 就 是 合 成, 意 指 某 類 別 之 物 件 使 用 其 他 類 別 的 物 件 做 其 成 員
2 Base Class and Derived Classes 一 類 別 的 物 件 常 常 也 可 視 為 另 一 類 別 的 物 件 ( 其 中 一 種 或 其 下 分 支 ), 例 如, 研 究 生 是 學 生 的 一 種, 我 們 可 利 用 繼 承 的 功 能, 將 學 生 定 義 為 基 本 類 別, 而 將 研 究 生 定 義 為 學 生 的 衍 生 類 別 衍 生 類 別 的 每 一 個 物 件 同 時 也 屬 於 此 類 別 之 基 本 類 別 的 物 件, 但 反 之 並 不 成 立 基 本 類 別 的 物 件 並 不 是 此 類 別 之 衍 生 類 別 的 物 件 例 如, 在 繼 承 的 關 係 上, 研 究 生 是 學 生 的 一 種 特 殊 類 型, 反 之 學 生 並 不 一 定 是 研 究 生, 語 意 上 是 如 此, 也 為 類 別 繼 承 的 規 則 有 時, 基 本 類 別 又 稱 為 父 類 別, 衍 生 類 別 又 稱 為 子 類 別 有 關 於 基 本 類 別 與 衍 生 類 別 的 例 子 如 下 : Base Class Derived Class + Base Class Derived Class Student GraduateStudent MasterStudent PhDStudent UndergraduateStudent FullTimeStudent PartTimeStudent Shape 2DShape Circle Triangle Rectangular 3DShape Sphere Cube Vehicle Car Bus Employee ContractEmployee HourlyEmployee Account SavingAccount CheckingAccount Matrix FullMatrix SymmetricMatrix SparseMatrix Element TrussElement BeamElement BeamColumnElement PlateElement
3 80 類 別 繼 承 為 階 層 式 的 交 錯 樹 狀 架 構, 一 類 別 可 如 先 前 獨 立 存 在, 但 如 其 位 於 繼 承 的 架 構 中, 則 其 不 是 提 供 本 身 屬 性 與 行 為 給 其 下 類 別 的 基 本 類 別, 就 是 繼 承 其 他 類 別 屬 性 與 行 為 之 衍 生 類 別, 或 二 者 皆 是 單 一 繼 承 (single inheritance) 是 指 一 個 衍 生 類 別 是 由 繼 承 單 一 個 基 本 類 別 而 來 如 一 衍 生 類 別 繼 承 了 多 個 基 本 類 別, 則 稱 為 多 重 繼 承 (multiple inheritance) UniversityMember Employee Student Faculty Staff GraduateStudent UndergraduateStudent Administrator Teacher T A R A AdministratorTeacher public 繼 承 的 格 式 如 下 : class Y : public X 新 增 之 資 料 成 員 ; public: 新 增 或 重 新 定 義 之 函 式 成 員 ;
4 81 衍 生 類 別 會 繼 承 基 本 類 別 所 有 的 資 料 成 員 與 函 式 成 員 ( 需 注 意 這 些 成 員 並 沒 有 出 現 於 衍 生 類 別 的 程 式 碼 中, 易 弄 混 ), 於 public 繼 承 的 情 況 下, 衍 生 類 別 之 函 式 成 員 只 能 直 接 存 取 或 呼 叫 所 繼 承 來 的 public 與 protected 成 員, 但 不 能 直 接 存 取 或 呼 叫 所 繼 承 來 的 private 成 員 通 常 會 有 多 個 衍 生 類 別 所 共 同 繼 承 自 一 基 本 類 別 的 情 形, 則 這 些 衍 生 類 別 同 屬 於 基 本 類 別 之 一 類, 例 如, 研 究 生 與 大 學 生 都 屬 於 學 生 我 們 可 將 這 些 衍 生 類 別 所 共 有 的 資 料 與 功 能, 定 義 於 基 本 類 別, 如 此 衍 生 類 別 們 就 不 必 對 這 些 共 有 的 部 分 個 別 重 複 定 義, 例 如, 將 研 究 生 與 大 學 生 都 有 的 姓 名 與 學 號 定 義 於 學 生 基 本 類 別 內 而 特 屬 於 衍 生 類 別 之 屬 性 與 行 為 則 定 義 於 衍 生 類 別, 例 如, 將 研 究 生 才 有 之 組 別 與 研 究 室 定 義 於 研 究 生 衍 生 類 別 衍 生 類 別 繼 承 自 基 本 類 別 的 的 public 函 式 成 員, 可 能 會 不 符 合 衍 生 類 別 的 需 要, 故 我 們 可 以 在 衍 生 類 別 內 修 改 或 重 新 定 義 (overridden) 這 些 函 式 成 員, 使 之 合 乎 衍 生 類 別 應 有 的 之 意 義 與 行 為 衍 生 類 別 中 函 式 成 員 之 重 新 定 義, 常 會 先 呼 叫 已 定 義 於 基 本 類 別 的 public 函 式 成 員, 再 加 上 專 屬 於 此 衍 生 類 別 的 部 分 ; 或 者, 完 全 將 此 函 式 成 員 重 新 定 義 亦 可 故 繼 承 同 一 基 本 類 別 之 類 別 的 共 同 處 即 基 本 類 別 之 屬 性 與 行 為, 經 由 public 繼 承 所 產 生 的 任 何 衍 生 類 別 之 物 件, 均 同 時 亦 為 基 本 類 別 的 物 件 ( 當 物 件 以 指 標 或 參 考 操 作 時 ), 因 為 對 外 部 程 式 而 言, 其 完 全 具 有 基 本 類 別 應 有 的 屬 性 與 行 為, 且 存 取 權 限 與 基 本 類 別 之 設 定 完 全 相 同 但 基 本 類 別 之 物 件 並 非 衍 生 類 別 之 物 件, 因 為 衍 生 類 別 通 常 有 屬 於 此 衍 生 類 別 獨 有 的 屬 性 與 行 為 例 : 當 Manager 以 public 繼 承 了 Employee,Employee* 可 指 到 並 操 作 Manager 物 件 Manager * Mptr = new Manager (. ); Employee * Eptr = Mptr; 以 下 則 程 式 則 不 可 被 編 譯 器 接 受 Employee * Eptr = new Employee (. ); Manager * Mptr = Eptr;
5 Constructor and Destructor for a Derived Class 基 本 類 別 之 建 構 函 式 解 構 函 式 與 拷 貝 指 定 運 算 子 不 會 繼 承 給 衍 生 類 別 不 過 衍 生 類 別 之 建 構 函 式 解 構 函 式 與 拷 貝 指 定 運 算 子, 可 以 呼 叫 基 本 類 別 之 建 構 函 式 解 構 函 式 與 拷 貝 指 定 運 算 子 衍 生 類 別 通 常 需 定 義 自 己 的 建 構 函 式, 衍 生 類 別 的 建 構 函 式, 必 須 要 呼 叫 其 每 個 基 本 類 別 的 建 構 函 式, 來 初 始 化 繼 承 自 基 本 類 別 的 資 料 成 員, 明 確 地 呼 叫 基 本 類 別 的 建 構 函 式, 其 格 式 如 下, 如 未 明 確 地 呼 叫, 則 會 自 動 呼 叫 基 本 類 別 之 預 設 建 構 函 式 class Employee char* name; int deptid; public: Employee(char* n, int d) strcpy(name, n); deptid = d; print( );. ; class Manager : public Employee int rank;. public: Manager(char* n, int d, int r) : Employee(n, d), // initialize base members rank ( r ) // initialize local members print( ); // override print.
6 83 衍 生 類 別 物 件 之 建 立 的 程 序 是 :(1) 先 呼 叫 基 本 類 別 之 建 構 函 式 初 始 化 繼 承 來 的 base members,(2) 之 後 執 行 衍 生 類 別 之 member initializer,(3) 最 後 執 行 建 構 函 式 中 之 內 容 來 設 定 local members 至 於 解 構 函 式 方 面, 在 執 行 完 衍 生 類 別 的 解 構 函 式 中 的 命 令 後, 系 統 必 定 會 自 動 呼 叫 其 基 本 類 別 的 解 構 函 式 故 衍 生 類 別 物 件 之 釋 放 為 與 物 件 建 立 相 反 的 程 序,(1) 先 釋 放 local members,(2) 然 後 執 行 基 本 類 別 之 解 構 函 式 釋 放 base members Calling/Accessing the Base Members from Derived Classes 衍 生 類 別 的 函 式 成 員 可 以 存 取 或 呼 叫 繼 承 自 基 本 類 別 的 public 或 protected 資 料 成 員 或 函 式 成 員, 其 做 法 是 使 用 基 本 類 別 的 名 稱 與 範 圍 解 析 運 算 子, 例 如 : void Employee::print( ) cout<<name<< <<deptid<<endl; void Manager::print( ) Employee::print( ); cout<<rank<<endl; //calling base member Overriding the Function Members from Derived Classes 由 基 本 類 別 繼 承 來 的 函 式 成 員, 常 不 符 基 本 類 別 的 需 要 衍 生 類 別 可 將 繼 承 自 基 本 類 別 的 函 式 成 員, 依 衍 生 類 別 的 需 要 修 改 或 重 新 定 義, 稱 為 override, 其 做 法 是 我 們 須 於 衍 生 類 別 中 重 新 宣 告 此 一 繼 承 來 的 函 式 成 員, 並 提 供 其 新 的 定 義, 例 如 上 例 之 print Override 的 做 法, 可 先 呼 叫 基 本 類 別 中 被 overridden 的 函 式 成 員, 再 補 充 屬 於 衍 生 類 別 的 內 容, 如 上 例 之 print; 或 完 全 重 新 定 義, 如 需 存 取 基 本 類 別 的 private members, 需 有 public 或 protected 的 存 取 函 式
7 84 程 式 範 例 : oop_ex93.cpp 1. circle 類 別 以 public 的 方 式 繼 承 了 point 類 別, 這 項 指 定 出 現 於 circle 類 別 定 義 的 第 一 行, 冒 號 (:) 代 表 了 繼 承 2. 衍 生 類 別 (circle) 會 繼 承 所 有 基 本 類 別 (point) 的 成 員 (x, y, moveto, distto, print ), 但 於 衍 生 類 別 的 建 構 函 式 中, 無 法 直 接 存 取 基 本 類 別 的 私 有 成 員 (x, y), 為 了 對 繼 承 自 基 本 類 別 的 私 有 成 員 初 始 化, 必 須 要 使 用 基 本 類 別 的 建 構 函 式, 呼 叫 格 式 見 範 例 至 於 呼 叫 順 序, 是 基 本 類 別 的 建 構 函 式 先 被 呼 叫, 再 執 行 衍 生 類 別 的 建 構 函 式 3. 衍 生 類 別 可 以 直 接 使 用 繼 承 而 來 的 public 函 式 成 員 ( 如 moveto, distto), 並 定 義 專 屬 於 衍 生 類 別 的 新 函 式 成 員 ( 如 area, perimeter, getr) 4. 於 衍 生 類 別 中, 如 果 要 存 取 基 本 類 別 之 私 有 成 員, 唯 有 透 過 基 本 類 別 所 提 供 的 函 式 成 員 ( 例 如 getx, gety), 如 基 本 類 別 沒 有 提 供 這 些 存 取 函 式, 則 無 法 達 成 5. 如 需 要 將 繼 承 自 基 本 類 別 的 函 式 成 員, 依 衍 生 類 別 的 需 要 修 改 或 重 新 定 義 ( 例 如 print), 則 我 們 須 於 衍 生 類 別 中 重 新 宣 告 此 一 函 式 成 員, 並 提 供 其 新 的 定 義, 修 改 或 重 新 定 義 後 的 函 式 將 於 衍 生 類 別 中 取 代 繼 承 自 基 本 類 別 的 定 義 6. 如 果 對 某 一 繼 承 自 基 本 類 別 的 函 式 成 員, 我 們 不 需 完 全 更 改 其 原 本 的 定 義, 只 需 要 加 入 新 的 功 能 ( 例 如 print), 我 們 可 以 不 必 重 寫 已 定 義 於 原 基 本 類 別 之 原 函 式 的 部 分, 而 只 要 呼 叫 此 一 原 函 式, 再 加 上 新 增 的 部 分 即 可 7. 在 執 行 完 衍 生 類 別 的 解 構 函 式 中 的 命 令 後, 系 統 必 定 會 自 動 呼 叫 其 基 本 類 別 的 解 構 函 式, 因 此, 於 衍 生 類 別 的 解 構 函 式 中, 不 需 對 繼 承 自 其 基 本 類 別 的 資 料 成 員 做 處 理, 此 項 工 作 就 交 給 基 本 類 別 的 解 構 函 式 至 於 呼 叫 順 序, 是 衍 生 類 別 的 構 函 式 先 被 呼 叫, 再 執 行 基 本 類 別 的 構 函 式 程 式 範 例 : oop_ex94.cpp 1. 一 衍 生 類 別 可 以 當 作 是 其 基 本 類 別 來 使 用, 例 如 : 將 一 衍 生 類 別 物 件 指 定 給 其 基 本 類 別 的 指 標 參 考, 或 是 當 作 參 數, 輸 入 接 受 其 基 本 類 別 的 函 式 內 ( 可 參 考 之 後 將 介 紹 的 衍 生 類 別 之 拷 貝 建 構 函 式 與 拷 貝 指 定 運 算 子 ) 2. 此 之 所 以 可 行, 是 因 為 衍 生 類 別 繼 承 了 其 本 類 別 所 有 的 資 料 與 功 能 3. 但 反 之, 基 本 類 別 不 可 以 作 為 其 衍 生 類 別 來 用 因 基 本 類 別 不 具 備 衍 生 類 別
8 85 中 所 新 宣 告 定 義 的 資 料 成 員 與 函 式 成 員 ( 如 radius, area) 4. 指 定 給 為 其 基 本 類 別 的 指 標 或 參 考 之 衍 生 類 別 物 件, 如 透 過 基 本 類 別 的 指 標 或 參 考 來 操 作, 其 表 現 出 的 行 為 將 如 同 其 基 本 類 別 一 樣, 而 非 於 衍 生 類 別 中 新 定 義 的 行 為 ( 例 如 print), 也 不 具 新 增 的 功 能 ( 無 法 執 行 area) Note: 與 下 一 章 介 紹 之 Virtual Function 比 較 5. 基 本 類 別 的 指 標, 可 強 制 轉 換 (cast) 成 衍 生 類 別 的 指 標, 使 用 轉 換 後 之 指 標 來 操 作 衍 生 類 別 物 件, 即 回 復 衍 生 類 別 的 行 為 Casting Base-Class Pointers to Derived-Class Pointers 基 本 類 別 之 物 件 並 不 可 視 為 衍 生 類 別 之 物 件, 不 過 程 式 設 計 者 可 明 確 使 用 強 制 轉 換, 將 基 本 類 別 之 指 標 轉 換 成 為 衍 生 類 別 之 指 標, 此 稱 為 downcasting 需 注 意 的 是 要 確 認 指 標 所 指 物 件 的 實 際 型 別 為 何, 雖 可 以 用 downcasting 將 基 本 類 別 之 物 件 指 定 給 衍 生 類 別 之 指 標, 但 存 取 不 存 在 的 成 員 會 造 成 執 行 邏 輯 上 的 錯 誤 程 式 範 例 : oop_ex95.cpp 1. 請 注 意 執 行 的 結 果, 以 circle 指 標 操 作 point 物 件, 由 於 point 物 件 並 沒 有 定 義 radius 等 成 員, 程 式 則 將 radius 預 期 所 在 記 憶 體 位 址 之 現 存 值, 直 接 輸 出 此 有 如 使 用 超 出 陣 列 範 圍 之 索 引 值 對 陣 列 做 存 取 之 情 況 10.2 Protected Member 說 明 : protected 成 員 保 護 程 度 介 於 private 與 public 成 員 之 間, 一 基 本 類 別 的 protected 成 員, 可 被 其 衍 生 類 別 的 成 員 或 朋 友 直 接 存 取, 有 如 public 成 員 但 對 於 其 他 的 類 別, 則 無 法 自 由 存 取, 有 如 private 成 員 於 public 繼 承 的 情 況 下, 衍 生 類 別 對 其 繼 承 而 來 之 成 員 的 存 取 權 限 :
9 86 (1) public: 所 有 程 式 包 括 其 衍 生 類 別 均 可 直 接 存 取 某 基 本 類 別 的 public 成 員 (2) protected: protected 為 特 別 針 對 繼 承 情 況 的 存 取 設 定, 衍 生 類 別 的 函 式 成 員 與 朋 友 可 直 接 存 取 其 基 本 類 別 的 protected 成 員, 而 其 他 部 分 式 則 不 可 直 接 存 取 某 基 本 類 別 的 protected 成 員 (3) private: 與 所 有 非 基 本 類 別 的 程 式 一 樣, 衍 生 類 別 不 能 直 接 存 取 其 基 本 類 別 的 private 成 員, 衍 生 類 別 對 於 基 本 類 別 的 private 成 員 之 存 取, 需 透 過 基 本 類 別 提 供 宣 告 為 public 或 protected 之 存 取 函 式 (4) 需 注 意 的 是, 朋 友 函 式 並 非 基 本 類 別 之 成 員, 故 無 法 被 繼 承 程 式 範 例 : oop_ex96.cpp 1. 衍 生 類 別 的 建 構 函 式 可 直 接 初 始 化 protected 成 員, 但 一 般 還 是 建 議 使 用 基 本 類 別 的 建 構 函 式 2. 非 衍 生 類 別 之 函 式 成 員, 例 如 主 程 式 內 無 法 存 取 protected 成 員 10.3 public protected and private Inheritance C++ 有 public protected 與 private 三 種 繼 承 方 式, 使 用 protected 與 private 繼 承 是 很 少 見 的 不 同 的 繼 承 方 式 會 影 響 成 員 被 繼 承 後, 於 衍 生 類 別 中 之 權 限 設 定, 其 規 則 如 下 : 基 本 類 別 中 之 成 員 設 定 public 成 員 protected 成 員 private 成 員 public / 可 直 接 存 取 protected / 可 直 接 存 取 繼 承 後 於 衍 生 類 別 之 權 限 設 定 ( 對 外 ) / 衍 生 類 別 函 式 成 員 存 取 方 式 ( 對 內 ) public 繼 承 protected 繼 承 private 繼 承 hidden / 需 透 過 基 本 類 別 提 供 之 存 取 函 式 protected / 可 直 接 存 取 protected / 可 直 接 存 取 hidden / 需 透 過 基 本 類 別 提 供 之 存 取 函 式 private / 可 直 接 存 取 private / 可 直 接 存 取 hidden / 需 透 過 基 本 類 別 提 供 之 存 取 函 式 程 式 範 例 : oop_ex97.cpp oop_ex98.cpp oop_ex99.cpp
10 87 1. protected 與 private 繼 承 均 不 是 is a 關 係 2. base class 可 分 為 direct base class 與 indirect base class:direct base class 為 宣 告 衍 生 類 別 時, 明 確 以 : 指 定 ;indirect base class 並 非 於 宣 告 衍 生 類 別 時 明 確 指 定, 而 是 衍 生 類 別 時 經 由 二 或 多 層 繼 承, 間 接 由 direct base class 繼 承 來 的 10.4 Copy Constructor and Copy Assignment Operator for Derived Classes 衍 生 類 別 的 拷 貝 建 構 函 式 與 拷 貝 指 定 運 算 子 也 必 須 要 呼 叫 其 基 本 類 別 的 相 對 應 函 式 來 初 始 化 base members, 其 呼 叫 方 式 如 下 : class Employee public: Employee(const Employee& other).. Employee& operator=(const Employee& other)... ; class Manager : public Employee. public: Manager(const Manager& other) : Employee(other) Manager& operator=(const Manager& other) Employee::operator=(other);..
11 88 程 式 範 例 : oop_ex100.cpp 1. 各 位 可 注 意 到 呼 叫 基 本 類 別 的 拷 貝 建 構 函 式 與 拷 貝 指 定 運 算 子 時, 所 輸 入 參 數 是 衍 生 類 別 的 物 件, 由 於 衍 生 類 別 可 當 作 是 其 基 本 類 別 來 使 用 ( 指 定 給 基 本 類 別 之 指 標 或 參 考 ), 故 此 做 法 並 沒 有 問 題 10.5 Friend Functions in Inheritance 適 用 於 基 本 類 別 的 朋 友 函 式 亦 適 用 於 其 衍 生 類 別 但 其 原 因 並 不 是 衍 生 類 別 繼 承 了 基 本 類 別 的 朋 友 函 式 ( 朋 友 函 式 並 非 一 類 別 的 成 員 ), 而 是 衍 生 類 別 之 物 件 可 當 作 其 基 本 類 別 之 物 件 來 使 用 程 式 範 例 : oop_ex101.cpp 1. 朋 友 函 式 不 能 直 接 存 取 衍 生 類 別 專 有 的 private 成 員 (radius), 故 可 知 其 並 不 是 circle 的 朋 友, 而 只 是 point 的 朋 友 故 可 以 說 一 類 別 的 朋 友 函 式 並 不 具 有 繼 承 的 功 能, 因 為 其 根 本 並 不 是 類 別 的 成 員 之 一 10.6 Relationship between Classes Composition vs. Inheritance 類 別 間 如 為 public 繼 承, 則 為 is a 之 繼 承 關 係, 即 衍 生 類 別 之 物 件 可 視 為 其 基 本 類 別 之 物 件, 例 如 Manager is a Employee,Car is a Vehicle. 如 類 別 將 其 他 類 別 之 物 件 當 做 成 員, 則 為 has a 之 合 成 關 係, 例 如 Team has a Person,Car has a Engine, 於 合 成 關 係 下, 物 件 可 透 過 彼 此 公 開 之 介 面 交 互 作 用
12 Uses a and Know a Relationship 除 了 繼 承 與 合 成, 類 別 間 還 有 uses a 與 know a 關 係 例 如 Person 與 Car 間 非 繼 承 與 合 成 之 關 係, 但 Person 可 駕 駛 Car, 故 其 間 為 Person uses a Car 之 關 係 物 件 以 指 標 或 參 考 來 參 照 到 其 他 物 件, 稱 為 knows a 關 係, 或 稱 為 association, 表 示 物 件 間 可 透 過 指 標 或 參 考 相 關 聯, 物 件 間 如 為 has a 或 uses a 關 係, 均 可 以 knows a 方 式 相 關 聯 10.7 Multiple Inheritance C++ 之 類 別 可 以 繼 承 自 多 個 基 本 類 別, 這 種 產 生 衍 生 類 別 的 方 式 稱 為 多 重 繼 承 (multiple inheritance), 此 促 成 軟 體 之 重 複 使 用, 但 會 造 成 許 多 混 淆 的 問 題 多 重 繼 承 的 宣 告 格 式 如 下, 繼 承 之 所 有 基 本 類 別 均 指 定 於 : 後, 並 以, 分 開 class Derived : public Base1, public Base2,. 程 式 範 例 : oop_ex102.cpp 1. TA 包 含 了 兩 個 name 資 料 成 員, 一 個 繼 承 自 Staff, 一 個 繼 承 自 Student, 於 TA 中 對 其 存 取 會 有 混 淆 的 情 形 發 生, 需 使 用 範 圍 解 析 運 算 子, 將 其 區 隔 出 來 對 於 沒 有 名 稱 衝 突 者, 如 salary 與 level, 則 可 直 接 存 取 2. 同 樣 的 情 形 也 發 生 於 TA 所 繼 承 之 setdept 與 getdept 函 式 成 員 上 3. is a 關 係, 也 適 用 於 多 重 繼 承, 例 如 TA 之 物 件 可 視 為 Student 之 物 件, 也 可 視 為 Staff 之 物 件 4. 本 範 例 為 簡 單 的 多 重 繼 承,C++ 之 多 重 繼 承 尚 有 其 他 的 問 題, 例 如 diamond hierarchies, 未 來 將 再 做 介 紹
Strings
Inheritance Cheng-Chin Chiang Relationships among Classes A 類 別 使 用 B 類 別 學 生 使 用 手 機 傳 遞 訊 息 公 司 使 用 金 庫 儲 存 重 要 文 件 人 類 使 用 交 通 工 具 旅 行 A 類 別 中 有 B 類 別 汽 車 有 輪 子 三 角 形 有 三 個 頂 點 電 腦 內 有 中 央 處 理 單 元 A
More informationMicrosoft PowerPoint - L17_Inheritance_v4.pptx
C++ Programming Lecture 17 Wei Liu ( 刘 威 ) Dept. of Electronics and Information Eng. Huazhong University of Science and Technology May. 2015 Lecture 17 Chapter 20. Object-Oriented Programming: Inheritance
More informationStrings
Polymorphism and Virtual Functions Cheng-Chin Chiang Virtual Function Basics 多 型 (Polymorphism) 賦 予 一 個 函 數 多 種 意 涵, 存 在 於 同 一 類 別 之 內 祖 先 類 別 與 後 代 類 別 間 物 件 導 向 程 式 設 計 基 本 原 理 虛 擬 函 數 (Virtual Function)
More information<4D6963726F736F667420506F776572506F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>
程 序 设 计 实 习 INFO130048 3-2.C++ 面 向 对 象 程 序 设 计 重 载 继 承 多 态 和 聚 合 复 旦 大 学 计 算 机 科 学 与 工 程 系 彭 鑫 pengxin@fudan.edu.cn 内 容 摘 要 方 法 重 载 类 的 继 承 对 象 引 用 和 拷 贝 构 造 函 数 虚 函 数 和 多 态 性 类 的 聚 集 复 旦 大 学 计 算 机 科 学
More informationMicrosoft Word - 物件導向編程精要.doc
Essential Object-Oriented Programming Josh Ko 2007.03.11 object-oriented programming C++ Java OO class object OOP Ruby duck typing complexity abstraction paradigm objects objects model object-oriented
More informationMicrosoft Word - chap13.doc
101 13. More on Inheritance in C++ 13.1 Virtual Bases and Diamond Hierarchies 13.1.1 Virtual Bases and Constructor Diamond hierarchies 為 C++ 多 重 繼 承 之 一 大 問 題 程 式 範 例 : oop_ex116.cpp 對 於 此,C++ 提 供 了 virtual
More informationextend
(object oriented) Encapsulation Inheritance Polymorphism Dynamic Binding (base class) (derived class) 1 class Base { int I; void X(); void Y(); class Derived: public Base { private: int j; void z(); Derived
More informationuntitled
1 7 7.1 7.2 7.3 7.4 7.5 2 7.1 VFT virtual 7.1 3 1 1. 2. public protected public 3. VFT 4. this const volatile 4 2 5. ( ) ( ) 7.1 6. no-static virtual 7.2 7. inline 7.3 5 3 8. this this 9. ( ) ( ) delete
More informationMicrosoft Word - ch04三校.doc
4-1 4-1-1 (Object) (State) (Behavior) ( ) ( ) ( method) ( properties) ( functions) 4-2 4-1-2 (Message) ( ) ( ) ( ) A B A ( ) ( ) ( YourCar) ( changegear) ( lowergear) 4-1-3 (Class) (Blueprint) 4-3 changegear
More information第七讲 继承与多态
第 七 章 继 承 与 派 生 1 本 章 主 要 内 容 的 继 承 成 员 的 访 问 控 制 单 继 承 与 多 继 承 派 生 的 构 造 析 构 函 数 成 员 的 标 识 与 访 问 深 度 探 索 2 的 继 承 与 派 生 的 继 承 与 派 生 保 持 已 有 的 特 性 而 构 造 新 的 过 程 称 为 继 承 在 已 有 的 基 础 上 新 增 自 己 的 特 性 而 产 生
More informationMicrosoft PowerPoint - plan08.ppt
程 序 设 计 语 言 原 理 Principle of Programming Languages 裘 宗 燕 北 京 大 学 数 学 学 院 2012.2~2012.6 8. 面 向 对 象 为 什 么 需 要 面 向 对 象? OO 语 言 的 发 展 面 向 对 象 的 基 本 概 念 封 装 和 继 承 初 始 化 和 终 结 处 理 动 态 方 法 约 束 多 重 继 承 总 结 2012
More informationebook55-13
1 3 C + + C C + + 13.1 X 256 C + + p r i v a t e p u b l i c p e r m u t e () X X Y 13.2 Y Y X 13 257 Y X Y X X m a i n () s i z e o f ( Y s i z e o f ( X ) p u b l i c p r i v a t e p u b l i c p r i
More informationChapter 9: Objects and Classes
Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum
More information<4D6963726F736F667420576F7264202D2030372D313032ABFCA6D2A4BDA5C1BB50AAC0B77CB8D5C34428A977BD5A29>
大 學 入 學 考 試 中 心 102 學 年 度 指 定 科 目 考 試 試 題 考 科 - 作 答 注 意 事 項 - 考 試 時 間 :80 分 鐘 作 答 方 式 : 選 擇 題 用 2B 鉛 筆 在 答 案 卡 上 作 答 ; 更 正 時, 應 以 橡 皮 擦 擦 拭, 切 勿 使 用 修 正 液 ( 帶 ) 未 依 規 定 畫 記 答 案 卡, 致 機 器 掃 描 無 法 辨 識 答 案
More informationuntitled
(encapsulation) 例 類 說 類 料 來 料 information hiding 念 (inheritance) 來說 類 類 類 類 類 類 行 利 來 (polymorphism) 不 類 數 不 1 2 3 4 類 類 不 類 不 類 5 6 7 // virtual 不見了 #include #include using namespace
More information《二十一世紀》網絡版
二 十 一 世 紀 網 絡 版 二 五 年 六 月 號 總 第 39 期 2005 年 6 月 30 日 從 天 理 世 界 觀 到 公 理 世 界 觀 的 轉 換 汪 暉 關 於 中 國 現 代 性 的 論 說 陳 贇 現 代 中 國 思 想 的 興 起 探 討 的 中 心 問 題 是 現 代 中 國 的 含 義 如 何 理 解 中 國 的 現 代 這 就 必 須 追 問 現 代 的 中 國 認
More information(procedure-oriented)?? 2
1 (procedure-oriented)?? 2 (Objected-Oriented) (class)? (method)? 3 : ( 4 ???? 5 OO 1966 Kisten Nygaard Ole-Johan Dahl Simula Simula 爲 6 Smalltalk Alan Kay 1972 PARC Smalltalk Smalltalk 爲 Smalltalk 爲 Smalltalk
More information相 应 功 能 (5) 再 将 Boy 类 作 为 Girl 类 的 友 元 类, 在 Boy 类 的 某 成 员 函 数 VisitGirl(Girl & ) 中 访 问 Girl 类 的 私 有 成 员, 观 察 编 译 器 给 出 的 信 息 ( 6 ) 删 除 两 个 类 中 的 函 数 V
面 向 对 象 程 序 设 计 及 C++ 课 程 实 验 教 学 大 纲 课 程 编 号 : B030001S 课 程 名 称 : 面 向 对 象 程 序 设 计 及 C++ 课 内 总 学 时 : 3 上 机 实 验 学 时 : 8 一 实 验 课 程 的 性 质 目 的 和 任 务 性 质 : 本 实 验 课 程 是 本 科 理 工 科 各 专 业 学 生 的 通 识 基 础 课, 该 实 验
More informationNethersoleJO89(8).indd
2 3 4 5 6 7 8 9 10 雅風四十六期 二零零八年九月 婆婆的愛心感動了我 陳姑娘在災區認識了白婆婆 她的家人全都在外地工 作 婆婆表示地震當日 她急忙地救了兩戶鄰舍的兩名小 孩 拖著六歲的男孩和揹著四個月大的嬰孩從災區步行兩 日後到達救援區 獲救的男孩每天都前往帳篷探望婆婆 因此她面上常帶笑容 每當白婆婆看見義工隊到災區時 都會送上暖暖的問候 更將獲配給的涼水贈予義工們 她 那真誠和熱切的關懷深深感動了義工隊
More informationuntitled
1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override
More informationOOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double
More information詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入
100 年 特 種 考 試 地 方 政 府 公 務 人 員 考 試 試 題 等 別 : 三 等 考 試 類 科 : 資 訊 處 理 科 目 : 系 統 分 析 與 設 計 一 請 參 考 下 列 旅 館 管 理 系 統 的 使 用 案 例 圖 (Use Case Diagram) 撰 寫 預 約 房 間 的 使 用 案 例 規 格 書 (Use Case Specification), 繪 出 入
More informationuntitled
...2...3...4...6...6...8...11...14...18...19...20...22...22...23...25...26...27...28...29...29...29 4-1 - ( ) 88 37 88 37 200121 2003 4 18 [2003]48 1.5 4-2 - ( ) 25 1 1 100032 2004 09 17 [1998]12 ( ) (
More informationEJB-Programming-3.PDF
:, JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Value Object Design Pattern J2EE Design Patterns Value Object Value Object Factory J2EE EJB Test Client
More information1.5招募说明书(草案)
PUBLIC 2014 1 PUBLIC - 1 2014 1 PUBLIC - 2 2014 1 PUBLIC - 3 2014 1 PUBLIC - 4 2014 1 PUBLIC - 5 2014 1 PUBLIC - 6 2014 1 PUBLIC - 7 2014 1 PUBLIC - 8 2014 1 PUBLIC - 9 2014 1 PUBLIC - 10 2014 1 PUBLIC
More information前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii
前言 C# C# C# C C# C# C# C# C# microservices C# More Effective C# More Effective C# C# C# C# Effective C# 50 C# C# 7 Effective vii C# 7 More Effective C# C# C# C# C# C# Common Language Runtime CLR just-in-time
More information《大话设计模式》第一章
第 1 章 代 码 无 错 就 是 优? 简 单 工 厂 模 式 1.1 面 试 受 挫 小 菜 今 年 计 算 机 专 业 大 四 了, 学 了 不 少 软 件 开 发 方 面 的 东 西, 也 学 着 编 了 些 小 程 序, 踌 躇 满 志, 一 心 要 找 一 个 好 单 位 当 投 递 了 无 数 份 简 历 后, 终 于 收 到 了 一 个 单 位 的 面 试 通 知, 小 菜 欣 喜
More information沒有投影片標題
C++ 類 (Class Inheriance) : 料 ( 異 ), 類 料, 利 類 狀, 不 更 來 data membermember function 類 料 類 類 (Base class) 類, 類 類 (Derived class) 類 利 料 料, 料 不 料, 料 料, 留 類 類, 料, 類 來 類 列 更 類 數 例 : 類 數 類 料 例, String 類, 類 料, 串
More information北 京 师 范 大 学 庆 祝 抗 日 战 争 胜 利 70 周 年 暨 纪 念 12.9 运 动 80 周 年 歌 咏 比 赛 掠 影 党 委 书 记 刘 川 生 指 挥 唱 校 歌 党 委 书 记 刘 川 生 分 别 为 获 得 一 等 奖 和 获 得 精 神 风 貌 奖 单 位 颁 奖 党 委
弘 扬 师 德 积 极 投 身 教 师 志 愿 服 务 北 京 师 范 大 学 庆 祝 抗 日 战 争 胜 利 70 周 年 暨 纪 念 12.9 运 动 80 周 年 歌 咏 比 赛 成 功 举 办 烛 光 行 动 教 师 志 愿 服 务 签 约 仪 式 在 北 京 师 范 大 学 举 行 北 京 师 范 大 学 举 办 第 二 届 青 年 管 理 干 部 岗 位 技 能 竞 赛 北 京 师 范
More information運算子多載 Operator Overloading
多型 Polymorphism 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 子類別與父類別物件間的指定 (assignment)
More information1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F
1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET 2.0 2.0.NET Framework.NET Framework 2.0 ( 3).NET Framework 2.0.NET Framework ( System ) o o o o o o Boxing UnBoxing() o
More informationOOP with Java 通知 Project 4: 4 月 19 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d
More informationMicrosoft PowerPoint - CPP-Ch Print.ppt [兼容模式]
Chapter 13 Object-Oriented Programming: Polymorphism http://jssec.seu.edu.cn 杨明 yangming2002@seu.edu.cn OBJECTIVES What polymorphism( 多态 ) is, how it makes programming more convenient, and how it makes
More informationMicrosoft Word - 1HF12序.doc
每 天 早 晨 水 果 日 報 的 頭 條, 總 有 瘋 狂 的 肥 皂 劇 在 現 實 社 會 中 上 演 著, 諸 如 友 寄 隆 輝 毆 打 計 程 車 司 機 案 014 貪 瀆 案 黑 暗 騎 士 掃 射 案 ( 美 國 ) 李 宗 瑞 淫 照 外 洩 案 等, 太 多 太 多 不 可 思 議 的 刑 事 個 案 都 活 生 生 地 搬 上 現 實 世 界 演 出 而 這 也 說 明 了
More informationMicrosoft Word - 讀報看科普─人體篇_橫_.doc
教 學 緣 起 在 引 領 學 生 進 行 讀 報 心 得 分 享 與 批 判 思 考 時, 發 現 學 生 普 遍 對 科 學 知 識 性 文 章 興 趣 缺 缺 ; 再 者, 近 年, 國 小 高 年 級 課 本 選 讀 科 普 文 章, 但 學 生 學 習 往 往 不 得 其 所, 無 法 融 入 課 文 中 因 此, 教 學 者 從 國 語 日 報 中 選 了 一 些 較 貼 近 生 活 的
More information鍟嗗搧瑙傚療鈥㈤挗鏉
年 报 食 用 油 可 期 稳 定 改 善 稳 定 有 余, 油 脂 将 继 续 表 现 库 存 压 力 和 高 价 值 化 价 区 的 对 抗 性 投 资 机 会 更 多 是 油 脂 内 部 结 构 以 及 其 对 粕 类 相 对 强 弱 的 变 动 同 时 有 菜 籽 油 和 棕 榈 油 的 改 善 可 预 期 相 较 于 其 它 大 多 数 商 品 的 表 现, 油 脂 系 在 2015 年
More information席 远 杨 一 人 了, 正 当 她 开 枪 时 却 发 现 子 弹 没 了 该 死, 只 能 赤 手 空 拳 了 洛 水 云 与 席 远 杨 交 起 手 来, 洛 水 云 出 手 招 招 致 命 想 那 席 远 杨 也 不 是 泛 泛 之 辈, 很 快 掌 握 了 洛 水 云 出 招 路 数 看
美 人 洛 水 云 / 作 者 : 慕 橙 子 第 一 卷 第 一 章 : 惨 死 睁 开 双 眼, 洛 水 云 马 上 闭 上, 再 睁 开, 又 闭 上 如 此 反 复 几 次 之 后, 洛 水 云 确 认 自 己 不 是 在 做 梦, 她 是 真 实 的 躺 在 床 上 这 究 竟 是 怎 么 回 事, 她 不 是 死 了 么? 是 谁 救 了 她 么? 如 果 她 被 救, 那 席 远 杨
More information閱 讀 素 材 V.S 分 組 方 式 的 差 異 化 教 學 工 具 表 班 級 :( ) 閱 讀 素 材 V.S 分 組 方 式 獨 立 閱 讀 夥 伴 閱 讀 ( 同 質 性 ) 夥 伴 閱 讀 ( 異 質 性 ) 友 善 陪 伴 虛 心 受 教 國 語 日 報 新 聞 生 活 文 藝 兒 童
差 異 化 教 學 在 老 梅 103 年 12 月 差 異 化 教 學 是 老 師 對 於 學 習 者 需 求 的 回 應, 這 句 話 雖 然 動 人, 但 要 瞭 解 每 個 學 生 不 同 的 需 求 並 予 以 回 應, 則 在 教 學 上 需 要 不 斷 的 嘗 試 觀 察 與 調 整, 老 師 不 僅 需 要 高 度 的 專 業 敏 銳 的 觀 察 十 足 的 創 意 等 等, 更 重
More informationMicrosoft Word - 2B802內文.doc
行 政 法 導 讀 001 行 政 法 導 讀 大 綱 序 言 壹 行 政 法 解 題 思 維 貳 行 政 法 選 擇 題 概 覽 參 行 政 法 常 考 爭 點 一 考 題 趨 勢 二 行 政 法 考 試 上 所 關 心 的 重 點 序 言 一 行 政 法 並 不 難 行 政 法 科 目 考 題 內 容 可 以 說 是 包 羅 萬 象, 考 生 要 能 夠 精 確 掌 握 實 務 上 各 種 領
More information東區校園中法治教育種子師資教學研習營
1 錄 錄 2 3 年 律 立 蓮 理 理 行 年 例 理 念 念 力 說 參 念 律 說 老 律 不 律 念 參 參 兩 力 參 兩 4 行 年 蓮 行 兩 見 參 律 行 說 論 兩 行 狀 參 參 蓮 蘭 列 律 年 律 理 律 年 參 行 行 兩 行 行 參 聯 參 聯 行 行 理 來 5 列 利 律 論 例 老 老 狀 老 老 了 利 老 索 老 行 不 老 錄 6 老 尿 例 律 留 量
More informationOOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class
More informationuntitled
1 Outline 類别 欄 (1) 類 類 狀 更 易 類 理 若 類 利 來 利 using 來 namespace 類 ; (2) namespace IBM class Notebook namespace Compaq class Notebook 類别 類 來 類 列 欄 (field) (property) (method) (event) 類 例 立 來 車 類 類 立 車 欄 料
More informationOOP with Java 通知 Project 4: 5 月 2 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class - Table.class
More information<4D F736F F D20B1B1BEA9B4F3D1A7C8CBC1A6D7CAD4B4B7A2D5B9B1A8B8E6A3A A3A92E646F63>
2010 人 力 资 源 发 展 报 告 ( 校 本 部 ) 北 京 大 学 人 事 部 2011 年 1 月 目 录 1. 前 言... 1 2. 总 量 与 结 构... 2 2.1 人 员 总 量 变 化... 2 2.2 教 师 队 伍 (faculty)... 2 2.3 教 师 队 伍 学 历 结 构... 4 2.4 教 师 队 伍 学 缘 结 构... 4 2.5 劳 动 合 同 制
More informationChapter 1 What is Programing Paradigm 1
An Introduction to Programing Paradigm Chase Zhang May 8, 2013 Chapter 1 What is Programing Paradigm 1 CHAPTER 1. WHAT IS PROGRAMING PARADIGM 2 Definition from Wikipedia 1. Object-oriented programming/
More informationChapter12 Derived Classes
继 承 -- 派 生 类 复 习 1. 有 下 面 类 的 说 明, 有 错 误 的 语 句 是 : class X { A) const int a; B) X(); C) X(int val) {a=2 D) ~X(); 答 案 :C 不 正 确, 应 改 成 X(int val) : a(2) { 2. 下 列 静 态 数 据 成 员 的 特 性 中, 错 误 的 是 A) 说 明 静 态 数
More informationMicrosoft Word - 97.01.30軟體設計第二部份範例試題_C++_ _1_.doc
電 腦 軟 體 設 計 乙 級 技 術 士 技 能 檢 定 術 科 測 試 範 例 試 題 (C++) 試 題 編 號 :11900-920201-4 審 定 日 期 : 94 年 7 月 1 日 修 訂 日 期 : 96 年 2 月 1 日 97 年 1 月 30 日 ( 第 二 部 份 ) 電 腦 軟 體 設 計 乙 級 技 術 士 技 能 檢 定 術 科 測 試 應 檢 參 考 資 料 壹 試
More information文档 3
1 2 3 4 5 6 / A B A B B A 7 8 9 10 11 12 OO A B A B 13 14 15 16 17 18 19 20 21 22 OOA OOA 23 24 25 OOA OOA 26 27 28 29 30 31 32 use case 33 use case 34 35 36 37 OOD OOA OOD 38 OOA 39 OOD 40 41 / 42 OOD
More informationMANPOWER STATISTICAL REPORT
Appendix 3 ( ) Mass Communications Industry Manpower Statistics (Advertising and Public Relations Sector) MANAGERIAL LEVEL Public Relations Services Managing Director General Manager Client Services Director
More informationMicrosoft Word - 970617cppFinalSolution.doc
國 立 台 灣 海 洋 大 學 資 訊 工 程 系 C++ 程 式 設 計 期 末 考 參 考 答 案 姓 名 : 系 級 : 學 號 : 97/06/17 考 試 時 間 :10:00 12:10 試 題 敘 述 蠻 多 的, 看 清 楚 題 目 問 什 麼, 針 對 重 點 回 答 是 很 重 要 的 ; 不 確 定 的 請 一 定 要 當 場 提 出 來, 不 要 白 花 力 氣 在 誤 會
More information软件工程文档编制
实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,
More information新・解きながら学ぶJava
481! 41, 74!= 40, 270 " 4 % 23, 25 %% 121 %c 425 %d 121 %o 121 %x 121 & 199 && 48 ' 81, 425 ( ) 14, 17 ( ) 128 ( ) 183 * 23 */ 3, 390 ++ 79 ++ 80 += 93 + 22 + 23 + 279 + 14 + 124 + 7, 148, 16 -- 79 --
More informationMicrosoft Word - ...........doc
1 : uml UML UML, : 2 UML 17 : 1) 2 3 4 5 6 1 (bind) 11.1 binding ( ):, + ID : int = 0 Map Item, Value, nclassid ( ):, + Map() + bind(i : Item, v : Value) : int OrderMap Person, BirthDate, Age,Age
More informationOOP with Java 通知 Project 4: 5 月 2 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d =
More informationScott Effective C++ C++ C++ Roger Orr OR/2 ISO C++ Effective Modern C++ C++ C++ Scoot 42 Bart Vandewoestyne C++ C++ Scott Effective Modern C++ Damien
Effective Modern C++ C++ C++ C++11/C++14 C++ Scott Meyers Gerhard Kreuzer Siemens AG Effective Modern C++ Effective Modern C++ Andrei Alexandrescu Facebook Modern C++ Design C++ C++ Nevin Liber DRW Trading
More information十 五 教 育 學 院 --------------------------------------------------------------------------17 十 六 通 識 教 育 中 心 ---------------------------------------------
國 立 暨 南 國 際 大 學 第 429 次 行 政 會 議 紀 錄 時 間 :104 年 3 月 18 日 ( 星 期 三 ) 上 午 9 時 30 分 地 點 : 行 政 會 議 室 出 席 : 江 大 樹 教 務 長 吳 明 烈 學 務 長 劉 一 中 總 務 長 ( 陳 谷 汎 組 長 代 ) 楊 德 芳 研 發 長 洪 政 欣 國 際 長 孫 同 文 主 任 秘 書 蔡 怡 君 館 長
More informationC++ 程式設計
C C 料, 數, - 列 串 理 列 main 數串列 什 pointer) 數, 數, 數 數 省 不 不, 數 (1) 數, 不 數 * 料 * 數 int *int_ptr; char *ch_ptr; float *float_ptr; double *double_ptr; 數 (2) int i=3; int *ptr; ptr=&i; 1000 1012 ptr 數, 數 1004
More information國家圖書館典藏電子全文
EAI EAI Middleware EAI 3.1 EAI EAI Client/Server Internet,www,Jav a 3.1 EAI Message Brokers -Data Transformation Business Rule XML XML 37 3.1 XML XML XML EAI XML 1. XML XML Java Script VB Script Active
More information第一章 章标题-F2 上空24,下空24
2 C# C# C#.NET ASP.NET C# C# C# 2.1 C# C#.NET.NET C#.NET C# CLR C#.NET 2.1.1 C# C# C++ Visual Basic C# C++ C++ C# C#.NET C# C C++ C#. C# C# C# C# 2.1.2 C# C# 2-01.cs C# 2-01.cs class Hello{ public static
More informationuntitled
Ogre Rendering System http://antsam.blogone.net AntsamCGD@hotmail.com geometry systemmaterial systemshader systemrendering system API API DirectX OpenGL API Pipeline Abstraction API Pipeline Pipeline configurationpipeline
More informationOOP with Java 通知 Project 4: 5 月 2 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public char
More informationOOP with Java 通知 Project 4: 4 月 19 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public char
More informationuntitled
3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(
More information全国计算机技术与软件专业技术资格(水平)考试
全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明
More informationMicrosoft PowerPoint - ch6 [相容模式]
UiBinder wzyang@asia.edu.tw UiBinder Java GWT UiBinder XML UI i18n (widget) 1 2 UiBinder HelloWidget.ui.xml: UI HelloWidgetBinder HelloWidget.java XML UI Owner class ( Composite ) UI XML UiBinder: Owner
More information用户大会 论文集2.2.doc
MagGis MapGis GIS MagGis API DLL MapGis VC++ VB BC++ Delphi., Windows API MapGis VC++V Delphi Delphi Delphi MapGis Delphi Delphi Windows Delphi Delphi MapGis MapGis DLL API MapGis function _InitWorkArea(HINST:Integer):Integer;
More informationKillTest 质量更高 服务更好 学习资料 半年免费更新服务
KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 310-055Big5 Title : Sun Certified Programmer for the Java 2 Platform.SE 5.0 Version : Demo 1 / 22 1. 11. public static void parse(string str)
More informationC/C++程序设计 - 字符串与格式化输入/输出
C/C++ / Table of contents 1. 2. 3. 4. 1 i # include # include // density of human body : 1. 04 e3 kg / m ^3 # define DENSITY 1. 04 e3 int main ( void ) { float weight, volume ; int
More informationC++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1
C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1 1 PERSON 1 Person 题目描述 编写程序, 定义一个基类 Person, 包含 name 和 age 两个数据成员 ; 再由它派生出学生类 Student 和教师类 Teacher, 其中学生类添加学号 no 数据, 教师类添加职称 title 数据 ; 要求每个类均有构造函数 析构函数和显示数据的函数
More information使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款
JAVA 程 序 设 计 ( 肆 ) 徐 东 / 数 学 系 使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款 使 用 Java class 代 表 保 险 箱 public class SaveBox 类 名 类 类 体 实 现 封 装 性 使 用 class SaveBox 代 表 保
More informationCollection of 2012 Examination Certificates
本 局 檔 號 領 取 香 港 年 考 度 試 及 評 通 核 告 局 請 各 與 考 學 校 委 派 職 員 中 學 文 憑 年 考 試 月 / 高 級 日 第 程 四 度 號 會 月 考 證 書 附 外 ), 夾 的 於 領 辦 取 公 單 時 到 間 本 ( 局 星 辦 期 事 一 處 ( 至 地 五 址 :: 上 香 港 )/ 灣 時 香 仔 港 軒 高 分 尼 級 至 詩 程 下 道 度
More informationuntitled
http://idc.hust.edu.cn/~rxli/ 1.1 1.2 1.3 1.4 1.5 1.6 2 1.1 1.1.1 1.1.2 1.1.3 3 1.1.1 Data (0005794, 601,, 1, 1948.03.26, 01) (,,,,,) 4 1.1.1 Database DB 5 1.1.1 (DBMS) DDL ( Create, Drop, Alter) DML(
More informationMicrosoft Word - 新1-12.doc
实训 5 面向对象编程练习 实训 5 面向对象编程练习 5.1 实训目的 通过编程和上机实验理解 Java 语言是如何体现面向对象编程基本思想 以及如何创建类 和对象 了解成员变量和成员方法的特性 5.2 实训要求 编写一个体现面向对象思想的程序 编写一个创建对象和使用对象的方法的程序 5.3 实训内容 5.3.1 创建对象并使用对象 1 定义一个 Person 类 可以在应用程序中使用该类 成员属性
More informationMicrosoft PowerPoint - 2011
科 锐 国 际, 领 先 的 整 体 招 聘 解 决 方 案 提 供 商 2011 职 场 女 性 工 作 生 活 状 态 调 查 报 告 科 锐 国 际 人 力 资 有 限 公 司 出 品 欢 迎 您 阅 读 科 锐 国 际 2011 年 职 场 女 性 工 作 生 活 状 态 调 查 报 告 调 研 背 景 本 调 查 报 告 通 过 对 北 京 上 海 广 州 三 地 主 要 CBD 商 圈
More informationhttp / /lady. people. com. cn /GB /1089 / html# http / /www. consumer. org. hk
DOI:10.14111/j.cnki.zgfx.2013.04.010 孙颖 * 1993 2008 10 2013 4 4 23 1 2 1 2 3 1 2 * NGO 2007 8 2000 5 87 2013 4 3 35 1998 2 2004 1974 4 20 1988 3 4 2007 4 17 http / /lady. people. com. cn /GB /1089 /5626116.
More information( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政
( 总 第 1073 期 ) 浙 江 省 人 民 政 府 主 办 2015 年 3 月 17 日 出 版 省 政 府 令 省 政 府 文 件 目 录 浙 江 省 大 型 群 众 性 活 动 安 全 管 理 办 法 ( 浙 江 省 人 民 政 府 令 第 333 号 ) (3) 浙 江 省 人 民 政 府 关 于 命 名 第 一 批 省 级 生 态 市 第 七 批 省 级 生 态 县 ( 市 区 )
More information程序设计语言及基础
Chapter 10 Classes: A Deeper Look, Part 2 http://jssec.seu.edu.cn 杨明 yangming2002@seu.edu.cn OBJECTIVES To specify const (constant) objects and const member functions. To create objects composed of other
More information纽约留学日记
孔 令 帅 博 士 纽 约 留 学 日 记 ( 一 ) 2012.1.26, 周 四, 晴 转 小 雨 今 天 终 于 踏 上 飞 往 美 利 坚 合 众 国 的 路 途 经 过 漫 长 的 近 14 个 小 时 的 飞 行, 终 于 体 会 到, 其 实 坐 飞 机 也 是 件 痛 苦 的 事 情 坐 的 是 东 航 的 飞 机, 飞 机 上 大 多 是 中 国 人, 各 有 各 的 素 质, 不
More informationHZNU
教 师 入 职 指 南 THE PERSONNEL GUIDANCE FOR NEW FACULTY MEMBERS 杭 州 师 范 大 学 人 事 处 ( 人 才 办 ) 入 校 手 续 杭 州 师 范 大 学 教 师 入 职 指 南 尊 敬 的 老 师 : 您 好! 诚 挚 地 欢 迎 您 加 入 杭 州 师 范 大 学 大 家 庭! 为 便 于 您 顺 利 入 职, 轻 松 愉 快 地 开 展
More information新版 明解C++入門編
511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,
More informationMicrosoft PowerPoint - ch_12 [唯讀]
深 度 學 習 C ++ Chapter 12 類 別 間 的 關 係 ( 一 ) 嵌 入 與 繼 承 1 類 別 間 的 關 係 ( 一 ) : 嵌 入 與 繼 承 類 別 間 的 關 係 ( 一 ): 使 用 使 用 (use): 某 甲 類 別 使 用 某 乙 類 別 物 件 來 完 成 某 項 事 情 學 生 使 用 手 機 傳 遞 訊 息 公 司 使 用 金 庫 儲 存 重 要 文 件 人
More information(Microsoft Word - \251I\250D\245D\246W
第 一 週 週 一 呼 求 主 名 ( 一 ) 哀 三 55 耶 和 華 阿, 我 從 極 深 的 坑 裏 呼 求 你 的 名 56 你 曾 聽 見 我 的 聲 音 ; 求 你 不 要 掩 耳 不 聽 我 的 呼 吸, 我 的 呼 籲 賽 十 二 4 上 在 那 日, 你 們 要 說, 當 稱 謝 耶 和 華, 呼 求 祂 的 名! 6 錫 安 的 居 民 哪, 當 揚 聲 歡 呼, 因 為 以 色
More informationMicrosoft Word - 第7章 类与对象.docx
第 7 章类与对象 案例 1 地址类 #include class Address char Name[21]; char Street[51]; char City[51]; char Postcode[10]; SetAddress(char *name,char *street,char *city,char *postcode); void ChangeName(char
More informationepub 32-2
2 L e x i W Y S I W Y G L e x i 8 2-1 L e x i 2-1 Lexi L e x i C a l d e r D o c [ C L 92 ] 2 23 2.1 L e x i 1) L e x i 2) L e x i 3) L e x i W Y S I W Y G L e x i 4 ) ( l o o k - a n d - f e e l )L e
More information说 : 荀 子 极 偏 驳, 只 一 句 性 恶, 大 本 已 失 5 朱 熹 说 : 荀 扬 不 惟 说 性 不 是, 从 头 到 底 皆 不 识 6 采 取 的 都 是 这 种 理 论 框 架 另 一 种 理 论 框 架 始 于 20 世 纪 前 期, 这 便 是 诸 子 学 研 究 的 框 架
第 一 章 绪 论 1. 问 题 与 文 献 本 文 试 图 探 讨 的 核 心 问 题, 一 言 以 蔽 之, 是 要 理 解 并 诠 释 荀 子 思 想 的 基 本 性 格 先 交 代 研 究 方 法 迄 今 为 止 的 荀 学 研 究 1 大 致 存 在 两 种 研 究 框 架 第 一 种 研 究 框 架 是 理 学 研 究 的 理 论 框 架 2, 该 框 架 主 张 以 孔 孟 作 为 研
More information1.5招募说明书(草案)
PUBLIC 2014 2 PUBLIC - 1 2014 2 PUBLIC - 2 2014 2 PUBLIC - 3 2014 2 PUBLIC - 4 2014 2 PUBLIC - 5 2014 2 PUBLIC - 6 2014 2 PUBLIC - 7 2014 2 PUBLIC - 8 2014 2 PUBLIC - 9 2014 2 PUBLIC - 10 2014 2 PUBLIC
More informationOOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public
More information11页词库答案
11 页 词 库 答 案 AP 13 Sophomore 2 Class Rank 11 Elective 7 Senior 4 Honors 15 GPA 10 Credit 5 Freshman 1 Diploma 9 GT 14 Fine Art 12 Regular 16 Junior 3 Prerequisite 8 Required 6 Extra-Curricular 17 Twenty-One
More informationKillTest 质量更高 服务更好 学习资料 半年免费更新服务
KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 70-536Chinese(C++) Title : TS:MS.NET Framework 2.0-Application Develop Foundation Version : DEMO 1 / 10 1. Exception A. Data B. Message C.
More informationFY.DOC
高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主
More information概述
OPC Version 1.6 build 0910 KOSRDK Knight OPC Server Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOS_Init...5 2.2.2 KOS_InitB...5 2.2.3
More informationMicrosoft Word - 138-葉禾田
南 台 科 技 大 學 九 十 七 學 年 度 實 務 專 題 製 作 成 果 報 告 專 題 名 稱 方. 心. 桃. 花 補 助 經 費 來 源 教 學 卓 越 計 畫 學 校 年 度 預 算 經 費 核 定 序 號 138 系 所 : 資 訊 傳 播 系 指 導 老 師 : 葉 禾 田 專 題 學 生 : 493F0918 李 宜 蓁 493F0018 493F0005 謝 靜 文 盧 德 蓉
More informationMicrosoft Word - A 中文.doc
李 求 恩 紀 念 中 學 2015-2016 年 度 中 文 科 工 作 計 劃 關 注 事 項 (1): 全 方 位 推 動 自 主 學 習, 追 求 卓 越 表 現 策 略 時 間 表 成 功 準 則 評 估 方 法 負 責 人 所 需 資 1. 強 化 透 過 資 訊 科 技 進 行 學 習, 增 加 學 生 全 年 最 少 有 3 次 應 用 平 板 電 腦, 校 本 統 計 調 查 科
More information版面2
编 辑 的 话 10 月, 田 园 里 吹 过 的 风 清 爽 宜 人, 同 时 风 也 在 轻 声 地 提 醒 田 园, 你 该 换 上 新 衣 啦 这 时, 我 们 的 园 刊 也 悄 悄 翻 过 了 新 的 一 页, 这 次, 它 会 带 你 去 寻 找 新 的 宝 藏 新 的 发 现 我 们 去 了 干 部 学 院, 那 里,3 4 岁 的 孩 子 用 长 长 的 脚 印 寻 找 自 然 的
More information提问袁小兵:
C++ 面 试 试 题 汇 总 柯 贤 富 管 理 软 件 需 求 分 析 篇 1. STL 类 模 板 标 准 库 中 容 器 和 算 法 这 部 分 一 般 称 为 标 准 模 板 库 2. 为 什 么 定 义 虚 的 析 构 函 数? 避 免 内 存 问 题, 当 你 可 能 通 过 基 类 指 针 删 除 派 生 类 对 象 时 必 须 保 证 基 类 析 构 函 数 为 虚 函 数 3.
More information提纲 1 2 OS Examples for 3
第 4 章 Threads2( 线程 2) 中国科学技术大学计算机学院 October 28, 2009 提纲 1 2 OS Examples for 3 Outline 1 2 OS Examples for 3 Windows XP Threads I An Windows XP application runs as a seperate process, and each process may
More informationWindows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco
Windows RTEMS 1 Danilliu MMI TCP/IP 80486 QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos ecos Email www.rtems.com RTEMS ecos RTEMS RTEMS Windows
More informationAdobe® Flash® 的 Adobe® ActionScript® 3.0 程式設計
337 18 Adobe Flash CS4 Professional MovieClip ActionScript Flash ActionScript Flash Flash Flash MovieClip MovieClip ActionScript ( ) MovieClip Flash Sprite ActionScript MovieClip ActionScript 3.0 Shape
More information