2011-01-10 9 views
0

RMIに関して疑問があります。 RMIでは、リモートオブジェクトを作成し、リモートインタフェースで宣言されているメソッドを呼び出すためにそれらを使用します。ですから、リモートオブジェクトのいくつかのパラメータを設定したいのであれば、オブジェクトのsetFieldメソッド(作成時)を使用しなければなりません。Javaのクライアントプログラムからリモートオブジェクトのコンストラクタ引数を渡す

しかし、オブジェクトのフィールドを初期化する最も一般的な方法はクラスのコンストラクタによるものなので、クライアントからリモートオブジェクトが作成されている間に利用されますか?

答えて

1

フィールドを初期化する最も一般的な方法は、コンストラクタに引数を渡すことです。私はむしろ、すべてのフィールドは、オブジェクトの作成中に初期化されますが、コンストラクタの引数を介していくつかのみが初期化されると言っています。

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

1

質問には意味がありません。リモートオブジェクトはサーバーJVMで構築され、の前にエクスポートされます。クライアントはの前に何かを実行できます。

関連する問題