![]() |
[Java] Neues Objekt vom anderen Objekt
Hallo,
ich wollte mal folgendes fragen: Ich habe ein Objekt einer bestimmten Klasse und möchte von der Klasse des Objekt ein neues Objekt erstellen. Also es gibt das Interface i und die Unterklassen s und t und das Objekt o vom Typ i. Jetzt erstelle ich ein neues Objekt i o = new s() und würde gerne jetzt das in der obigen Zeile wiederholen. Wenn das obige aber ein t ist, dann soll er nicht ein Objekt von s sondern von t erzeugen.
Code:
Ich hoffe ihr versteht was ich meine. :mrgreen:
i o = null;
if (Math.random() < 0.5) { o = new s(); } else { o = new t(); } // Jetzt will ich das er das obige wiederholt: o = new (Klasse von o)(); MfG Fabian |
Re: [Java] Neues Objekt vom anderen Objekt
Ich habe hier keine passende Entwicklungsumgebung, aber gibt es nicht eine Methode oder Eigenschaft getClass oder className?
Das kannst du dann zwar nicht genauso einbauen, wie du es oben in deinem Code stehen hast, da das soweit ich weiß einen String zurückgibt. Aber den kannst du dann ja immerhin abfragen und entsprechend dein neues Objekt erstellen ;) |
Re: [Java] Neues Objekt vom anderen Objekt
Und zur Not kannst Du Dir ja in einer Variablen merken, welchen Typ Du gerade erzeugt hast.
|
Re: [Java] Neues Objekt vom anderen Objekt
Hallo,
hast Du hier nicht eine grundlegend falsche Auffassung von Interfaces? Der Witz ist ja, dass es egal ist, welche Klasse sich dahinter verbirgt. Ich habe jetzt auch gerade keine IDE da, aber es würde mich wundern, wenn es ein getClass() bei Interfaces gäbe. Wenn Du Zugriff auf das Interface hast, kannst Du ja eine Methode New() implementieren, die jeweils ein neues Objekt zurück liefert. Das ist die saubere Lösung. Gruß xaromz |
Re: [Java] Neues Objekt vom anderen Objekt
Zitat:
Aber ich glaube das mit .New() dürfte da am saubersten sein. Und es gibt die Methode .getClass() die gibt zwar kein String zurück, aber so richtig was anfangen kann ich damit auch nicht. MfG Fabian |
Re: [Java] Neues Objekt vom anderen Objekt
Hallo,
Zitat:
Zitat:
Gruß xaromz |
Re: [Java] Neues Objekt vom anderen Objekt
Naja ich wollte ja nicht vom Interface was erstellen, dies sollte ja nur als „gemeinsamer“ Nenner dienen.
Damit wäre auch .getClass() wieder richtig, da ich die letzte Klasse von diesem Objekt haben wollte. MfG Fabian |
Re: [Java] Neues Objekt vom anderen Objekt
Zitat:
Zitat:
|
Re: [Java] Neues Objekt vom anderen Objekt
Hallo,
Zitat:
Gruß xaromz |
Re: [Java] Neues Objekt vom anderen Objekt
Zitat:
Zusätlich zu "Returns the runtime class of an object." gehe ich einfach mal davon aus, dass sich hier die JVM wie die CLR und wahrscheinlich alle anderen Plattformen verhält. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz