主題:「物件導向程式設計」的特性
關於試題:下列何者不是「物件導向程式設計」的特性?(A)機密性 (B)封裝性 (C)繼承性 (D)多型性 物件導向的特性 在物件導向程式設計的環境中,一個圖示、一個按鈕或文字欄位…等都是物件, 每個物件都包含資料以及相關的指令。當程式執行時,物件便等待事件發生,然 後再採取相關行動(即事件程序),這稱為事件驅動(Event-Driven),也是物 件導向程式與傳統程式之間的最大差別。物件導向語言還具有以下特性: ‧繼承性 一個物件擁有類別中部份或所有的特性,稱為繼承性(Inheritance)。例如, 不論工人、農人、商人、運動員與設計師...等都是「人」,即使工作崗位不同 但仍都一樣具有「身高」、「體重」、「性別」...等屬性。在物件導向程式設 計的環境中,程式設計師不須重覆撰寫經由繼承而來的設定指令,藉此節省開 發時間。 ‧包裝性 當我們去餐廳吃飯時只要告訴老闆「我要吃排骨飯」,至於這塊排骨是怎樣選 購、切割、浸料、沾粉、油炸...等烹飪流程我們都不必理會。烹飪的複雜性被 隱藏起來,使用者只要注意基本的操作如點餐的動作即可。同樣的,物件導向 將事件程序及屬性的程式碼包裝在一起,使程式設計師不須為每一個細節煩惱 ,這樣的特性便稱為包裝性(Encapsulation)。 ‧多型性 「小華」或「小明」都一樣可以進行「掃地」的工作,只要我們告訴他「去掃 地」即可。同樣的,程式設計師可用同樣的敘述來執行不同物件中相同的方法 ,這個特性稱為物件導向程式設計的多型性(Polymorphism)。 ‧抽象性 一般高階語言利用函數來處理相關程序,物件導向程式設計則將變數抽象化, 讓使用者可以更容易使用,這樣的特性稱為抽象性(Abstraction)。例如以「 視窗.開啟」代表開啟視窗的動作,而「視窗.關閉」則表示關閉視窗的動作。