Swift-Protocol內的Option方法
Swift內有個好用的Protocol可以讓所有符合此Protocol的物件必須要去實現所需要的方法。
先創建一個Protocol,並規定符合此Protocol要實現的方法,真正要做什麼事就交給符合此Protocol的物件去做

創建一個People 的class,並符合AbilityProtocol,編譯器就會開始哇哇叫,逼著去實現必須要實現的方法才肯罷休

將方法實現後終於編譯器終於滿意了

使用效果

要讓Protocol內的方法轉為Option要怎麼做呢?
extension 登場
只有使用extension 擴展protocol,就能直接在protocol內實現方法,我在extension AbilityProtocol內新增了smile方法,並且可以直接實現要做的事

使用效果-可以看到People內並沒有實現AbilityProtocol規定的smile方法,但編譯器不會哇哇叫,而people物件也可直接使用此協議內的方法

如果有需要也能覆寫哦
