2016-08-09 1 views
3

Meine Anforderung ist service an die vorhandene Name anhängen, so habe ich die Logik wie oben geschrieben.Legen Sie eine Methode, die in Kind definiert ist, auf eine Elternklassenreferenz oder fügen Sie sie zu einem übergeordneten Objekt

Derzeit übergebe ich ServiceIn an den vorhandenen Konstruktor wie oben in der Klasse ServiceImpl gezeigt, aber sie wollen nicht, dass ich es als ein zusätzliches Argument hinzufügen.

Also eine Idee, wie kann ich meine Servi zu den bestehenden serviceInstanceType hinzufügen?

Hier kommt das Problem von der Tatsache, dass der Dienst eine Methode von service (das übergeordnete) Objekt ist, so dass es direkt durch Getter und Setter zugegriffen wird.

Aber während get und setid sind in ServiceIn (Kind-Klasse), ich bin es Casting und den Wert und die Weitergabe später.

Irgendwelche Vorschläge wie kann ich die tsServiceInstance.setSiServiceId an die ServiceIn Klasse unter Berücksichtigung der oben genannten übergeben?

+1

Warum fügen Sie nicht als Setter hinzu? –

+0

Wir können nicht hinzufügen, ein Elternteil Klasse kommt aus einem api –

Antwort

0

Die Antwort ist recht einfach:

In Java gibt es die Vorstellung der Ausdehnung Klassen ist. Anstatt also die Elternklasse direkt aufzurufen, erstellen Sie eine weitere Klasse, die die Elternklasse (die von einer api stammt) erweitert und alle fehlenden Methoden hinzufügt.

+0

@nagmafirdose Ich hoffe, es beantwortet Ihre Frage – GingerHead

+0

Und wir können es auch auf eine andere Weise, dass, wie wir bereits erweitern die Elternklasse, ich es niedergeschlagen und jetzt wir kann auf alle Methoden aus dem Child-Klassen-Objektreferenz zugreifen, und ich habe die Werte mit Child-Klasse-Ojekt-Referenz festgelegt. Das hat für mich funktioniert. –

+0

Toll, dass es für Sie gearbeitet hat! – GingerHead

Verwandte Themen