YES!まさにその通り。

この場合、ルールは固定だから(ローカルルールのような、その時々によってルールが変わったりしない)、チューンするなら戦略だけをいじりたいのよね。
いじりたい部分を他の部分から簡単に切り離せるのが Java のいいとこです。
C でも同じことができるけど、異様なまでにややこしくなる。
ttp://kmaebashi.com/programmer/c_yota/inherit.html

Strategy は abstract クラスにしても良かったかも。
自分もまだクラスとインターフェイスの使い分けがまだ上手くないっす。