簡單的判斷方式: abstract class表示的是"is-a"關係,interface表示的是"like-a"關係。
不管是什麼門,一定都能開跟關,繼承Door的子類別要自己實作這個門怎麼開,怎麼關。
BDoor本身具有報警功能,但是本質上並不是一個警報器,因此不能直接繼承Alarmer,可以理解為BDoor像是一個警報器(Alarmer),具有報警(alarm)的功能。



本筆記參考:
1. http://jimmu-jimmu.blogspot.com/2012/10/abstract-classinterface.html
2. https://www.itread01.com/content/1548857901.html