2011-01-10 3 views
0

Ich habe Zweifel in Bezug auf RMI. In RMI erstellen wir Remote-Objekte und verwenden sie zum Aufruf von Methoden wie in der Remote-Schnittstelle deklariert. Wenn ich also einige Parameter eines entfernten Objekts einstellen möchte, muss ich eine setField-Methode (wie erstellt) für das Objekt verwenden.übergeben Konstruktor Argumente für ein Remote-Objekt aus Client-Programm in Java

Da jedoch die meisten Arten der Initialisierung von Feldern eines Objekts vom Konstruktor der Klasse ausgeführt werden, kann ich keine Argumente von meinem Client übergeben, so dass während das Remote-Objekt erstellt wird (durch neue auf dem Server) soll verwendet werden?

Antwort

1

Woran denken Sie, dass das Übergeben von Argumenten an einen Konstruktor die am häufigsten verwendete Methode zum Initialisieren von Feldern ist? Ich würde eher sagen, dass alle Felder während der Erstellung des Objekts initialisiert werden, aber nur ein paar durch Konstruktor Argumente.

Ja, Felder sind initialisiert während das Objekt erstellt wird. Kein Feldwert ist undefined für eine Instanz. Aber es ist schön gemeinsamen, dass Instanz Felder ihre tatsächlichen Werte nach die Instanz wurde erstellt. Es ist ziemlich üblich, eine Standardinstanz zu erstellen und die erforderlichen Werte später über Setter-Methoden oder sogar mit Abhängigkeitsinjektion einzustellen.

1

Ihre Frage ergibt keinen Sinn. Das entfernte Objekt muss auf der Server-JVM erstellt und exportiert werden, bevor der Client alles damit machen kann.

Verwandte Themen