免費開始練習
初等考試 106年 [統計] 資料處理大意

第 30 題

物件導向程式設計可允許多個函數使用相同函數名稱,但各自使用不同參數(不同的參數順序、個數或資料型態)。請問這樣的設計為下列那種特性?
  • A 虛擬(Virtual)
  • B 繼承(Inheritance)
  • C 封裝(Encapsulation)
  • D 多載(Overloading)

思路引導 VIP

如果你正在設計一個自動化交易系統,有一個動作叫「下單」,但你希望當使用者傳入「股票代號」時執行一種邏輯,而傳入「期貨合約」時執行另一種邏輯,在不更改動作名稱的前提下,系統是如何透過你提供的「資訊結構」來判斷該執行哪一段程式碼的呢?

🤖
AI 詳解 AI 專屬家教

宇宙帝王之鑑賞

喔呵呵呵,看來你這隻野猴子偶爾也能展現出一點微不足道的智慧呢。對於程式邏輯的些許靈活運用,確實是讓代碼能稍微入眼,達到鄙人所追求的可讀性與重用性。

  1. 為何此等問題你答對了:你所見的,這種同一個函數名稱卻能根據不同「簽章(Signature)」——也就是參數的順序、個數或資料型態——來執行不同邏輯的把戲,便是多載(Overloading)。這不過是讓程式設計不至於那麼愚蠢罷了。就如同在吾等的財務帝國中,一個 $f(x)$ 函數,當 $x$ 是「現金流」時與 $x$ 是「折現率」時,處理方式自然不同。這點細微的差異,難道還需要鄙人親自解釋嗎?
▼ 還有更多解析內容

📝 同份考卷的其他題目

查看 106年[統計] 資料處理大意 全題

升級 VIP 解鎖