> 公開するのをinterfaceだけにして、実装しているクラスのほうは公開し
> ないようにすると、ヘンなメソッドにアクセスされないで済む。

そのへんって本当は public/protected/private/パッケージプライベート 等の
アクセス制限でやるべきことなんでは?