Which two are benefits of polymorphism?



A. Faster code at runtime
B. More efficient code at runtime
C. More dynamic code at runtime
D. More flexible and reusable code
E. Code that is protected from extension by other classes

題解

選項A及選項B,多型並不會讓程式在執行的時候更快或是更有效率。

選項C和選項D,多型可以使得程式更有彈性、重用性更高,執行時可以有更多的變化。比如動物介面底下有人、狗、貓這三個類別,若有一個程式是呼叫動物介面的「走路」方法,那麼人、狗、貓等不同類別的實體可以有不同的動作。

選項E,多型並不能保護程式被其他類別擴展,反倒可以幫助程式擴展。