それは、「何とかリモートで通信する」部分で発生する魔法に依存します。
この通信が RMI または同様のテクノロジを介して行われる場合、これは問題ありません。アプリケーション B はOperation
JVM A のオブジェクトへのリモート プロキシを作成し、このプロキシでメソッドを呼び出すと、JVM A への HTTP 要求が生成されます。これは、その JVM に存在する実際のオブジェクト (実装クラスにアクセスできる) に対して解決されます。
この通信が、オブジェクトをシリアライズしてネットワーク経由で送信することによって行われる場合、それは機能しません。アプリケーション A からのオブジェクトが JVM B に到着すると、デシリアライゼーションは失敗します (aClassNotFoundException
などで)。
他のリモーティング テクノロジが存在する可能性もありますが、その場合は実装に依存します。クラスローダーはバイト配列からクラスをロードできることを知っているため、リモートソースからクラスをロードできるクラスローダーを持つことは概念的に非常に可能です。ネットワーキング ライブラリは、理論的にはこの方法でネットワークを介して実際のクラスをシリアル化できると私は信じています。そのため、JVM B は実装クラスをネイティブに認識していませんが、そのクラスローダーには必要に応じてクラスのバイトコードが提供されます。