板違いかもしれませんが、質問です。

オブジェクトの動的バインド(レイトバインド)はOO開発で必須な機能でしょうか?

(1) 不要。ない方がよい。

(2) 必須である。静的バインドだけでは柔軟性に欠ける。

(3) あってもなくてもよい。たまに便利な場合もある、という程度。

VBしか使ったことがないため、今まで漠然と、他の開発言語にも当然ある機能
だと思っていましたが、つい最近、Javaではできないと知りました。

ちなみに、VBの場合のレイトバインドの利点は、参照するコンポーネントのバージョンが不明
(例えば、Excel, WSH等のバージョンが個別ユーザー毎の実行環境により異なる)な場合でも、
バージョンの違いを吸収して動作可能なプログラムを作れる点です。
(事前バインドでは、開発環境と実行環境でのバージョンの相違が原因で配布したアプリが正常
動作しない場合があります)

JavaでCOMを使う試みもあるようですが、このあたりはどのようになっているのか気になります。