アダプタクラスは、実行時にJavaオブジェクトに対応するアダプタオブジェクトを生成します。アダプタオブジェクトは、以下の役割を持ちます。
対応するJavaインスタンスオブジェクトへのポインタを保持する。
アダプタオブジェクトのメソッドが呼ばれると、対応するJavaインスタンスオブジェクトの対応するJavaメソッドを呼び出す。
COBOLプログラムから見えるのはアダプタオブジェクトだけです。アダプタオブジェクトへの操作はすべて対応するJavaオブジェクトに伝わります。そのため、COBOLプログラムからは、アダプタオブジェクトがあたかもJavaオブジェクトであるように見えます。アダプタオブジェクトは、Javaオブジェクトの代理の役割を持つので、プロクシ(代理)オブジェクトとも呼びます。
Javaオブジェクトとアダプタオブジェクトの関係を以下に示します。
図2.2 Javaオブジェクトとアダプタオブジェクト