🎯 什麼情境該想到我
當你在猶豫「用繼承還是組合來重用行為」,或繼承層級越來越深、改父類就牽連一堆子類時。
⚙️ 怎麼用
- 重用行為時,先想「有一個」(組合)而非「是一個」(繼承):把行為委派給組合進來的物件。
- 繼承是編譯期綁死的白箱,組合是執行期可換的黑箱——組合更有彈性。
- 用繼承前先確認是真正的 is-a 關係,且父類穩定。
- 需要在執行期切換行為(如 Strategy 模式)→ 幾乎都用組合。
🧪 我實際套用的紀錄
- 2026-07-14:(待填)
⚠️ 注意
- 不是「禁用繼承」;穩定的 is-a、需要多型時繼承仍恰當。