0

RMIについて疑問があります。RMI では、リモート オブジェクトを作成し、それらを使用してリモート インターフェイスで宣言されたメソッドを呼び出します。したがって、リモートオブジェクトのいくつかのパラメーターを設定したい場合は、オブジェクトの setField メソッド (作成時) を使用して設定する必要があります。

ただし、オブジェクトのフィールドを初期化する最も一般的な方法はクラスのコンストラクターによるものであるため、リモートオブジェクトが作成されている間 (サーバーの new によって)、これらが利用されるようにクライアントから引数を渡すことはできませんか?

4

2 に答える 2

1

あなたの質問は意味がありません。リモートオブジェクトは、サーバーJVMで構築し、クライアントがそれを使用して何かを実行するにエクスポートする必要があります。

于 2011-01-10T23:23:22.080 に答える
1

引数をコンストラクターに渡すことがフィールドを初期化する最も一般的な方法であると考える理由は何ですか? むしろ、オブジェクトの作成中にすべてのフィールドが初期化されますが、コンストラクター引数を使用して初期化されるのはごくわずかです。

はい、オブジェクトの作成中にフィールドが初期化されます。インスタンスで未定義のフィールド値はありません。しかし、インスタンスが作成されたにインスタンス フィールドが実際の値を受け取ることはかなり一般的です。いくつかのデフォルト インスタンスを作成し、後でセッター メソッドまたは依存性注入を使用して必要な値を設定することはかなり一般的です。

于 2011-01-10T08:26:22.143 に答える