Casten ueber generischen Parameter?

Status
Nicht offen für weitere Antworten.
J

jago

Gast
Hi,

Nehmen wir an ich habe ein Object von dem ich sicher die Klasse kenne. Kann ich dann eine Methode schreiben, die mir dieses Object in dem Type zurueckgibt den ich erwarte?:

Code:
public static <T> T castGeneric(T objecttype, Object o) {
     return (T)o;
}


Ich weiss dass das oben nicht geht. Aber geht es vielleicht irgendwie anderst?

Wenn es nicht geht - kann mir jemand erklaeren warum es nicht moeglich ist...rein intressehalber :)
 
G

Guest

Gast
musiKk hat gesagt.:
jago hat gesagt.:
Ich weiss dass das oben nicht geht.
Verrueckt. Bei mir geht es. Allerdings kenne ich deine Erwartungen nicht.

hehe...ja stimmt :)

Ich wollte auch eher sowas machen:

Code:
        Object object = new Integer(23);
        Integer typedObject = castGeneric(Integer.class, object);

also ein Class-Objekt als Argument uebergeben...und das geht nun wirklich nicht ;)

Ich verstehe das nicht...warum kann man ein Objekt einer bestimmten Klasse casten wenn man ein zweites Objekt einer Klasse als Argument uebergibt aber nicht, wenn man die Klasse selbst uebergibt?


Wenn ich ein Class-Objekt eines Objekts habe sollte das doch ausreichen um das Objekt in den richtigen Typ zu casten, oder?
 

musiKk

Top Contributor
Dann muss die Methode so aussehen:
Code:
public static <T> T castGeneric(Class<T> klasse, Object o) { 
	     return (T)o; 
	}
 

Janus

Bekanntes Mitglied
und wenn du dann noch
Code:
public static <T> T castGeneric(Class<T> klasse, Object o) { 
        return klasse.cast( o ); 
}
draus machst, gibs nichtmal ne compiler warning. ich zweifle aber leicht an der sinnhaftigkeit so einer methode.
 
G

Guest

Gast
Janus hat gesagt.:
und wenn du dann noch
Code:
public static <T> T castGeneric(Class<T> klasse, Object o) { 
        return klasse.cast( o ); 
}
draus machst, gibs nichtmal ne compiler warning. ich zweifle aber leicht an der sinnhaftigkeit so einer methode.



Ist auch noch ein weiterer Schritt moeglich? Naemlich, zu casten ohne eine Compilerwarning zu bekommen?

Code:
Object o = new Integer(22);
Integer i = cast(o);

public static <T> T cast(Object o) { 
        return ...; 
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Baldur Datentypen Unnötiges Casten in Templatecode? Allgemeine Java-Themen 4
X Datentypen Byte geht nicht höher als 126 auch nicht mit casten? Allgemeine Java-Themen 22
F Klassen Casten Allgemeine Java-Themen 2
W Datentypen Datentyp "Number" casten? Allgemeine Java-Themen 5
J byte - hex - byte.. casten Allgemeine Java-Themen 8
N Casten durch generic vermeiden ?? Allgemeine Java-Themen 10
M Casten von Liste nach Array schlägt fehl?? Allgemeine Java-Themen 3
S Type safety Warnings beim casten von Generics Allgemeine Java-Themen 6
B Pattern gesucht, Programm Optionen, Casten vermeiden Allgemeine Java-Themen 3
C casten vom Typ Object nach Double[][] Allgemeine Java-Themen 2
Q Typen von Generics & Casten Allgemeine Java-Themen 3
M Andere Möglichkeit zu casten Allgemeine Java-Themen 8
G Objekte automatisch casten Allgemeine Java-Themen 10
M wie casten ? Allgemeine Java-Themen 7
T casten von Objekten aus einer ArrayList Allgemeine Java-Themen 4
F Welcher Datentyp in welchen casten? Allgemeine Java-Themen 11
F Viele generische Parameter sinnvoll? oder besser casten? Allgemeine Java-Themen 10
D toArray() bei ArrayList casten Allgemeine Java-Themen 10
N treenode casten? Allgemeine Java-Themen 2
R object zu array casten. Allgemeine Java-Themen 2
S Dynamisches Casten Allgemeine Java-Themen 5
D Object in int casten Allgemeine Java-Themen 7
D Optimierung beim Casten Allgemeine Java-Themen 4
P Dynamisch casten - möglich? wie? Allgemeine Java-Themen 5
S Compliance 5.0 prob: HashMap von obj casten Allgemeine Java-Themen 3
M Typkonvertierung und Casten? Allgemeine Java-Themen 6
M Object in HashMap casten Allgemeine Java-Themen 4
C Reflection und variable casten ! Allgemeine Java-Themen 10
K Klasse dynamisch casten Allgemeine Java-Themen 14
S ClassCastException beim Casten in eine Klasse Allgemeine Java-Themen 7
N Liste aendern waehrend des iterierens ueber selbige Allgemeine Java-Themen 11
J Javaprogramm ueber Windowskontextmenue starten Allgemeine Java-Themen 2
M Kommunikation mit externem Programm ueber Linux-Pipes Allgemeine Java-Themen 4
S E-Mail ueber Exchange Server schicken! Allgemeine Java-Themen 3
J Problem beim Generischen Klassen und Interfaces Allgemeine Java-Themen 2
N Generic Type einer Generischen Klasse während der Laufzeit bekommen Allgemeine Java-Themen 2
C Klassen Problem mit Funktion einer Generischen Klasse die ein Interface implementiert Allgemeine Java-Themen 0
G Fehler beim instanzieren einer Generischen Klasse Allgemeine Java-Themen 5
M Collections Typ Variable einer generischen Collection ? Allgemeine Java-Themen 4
L Methoden methoden an generischen klassentyp anpassen Allgemeine Java-Themen 5
I Mehrfaches Implementieren eines generischen Interface Allgemeine Java-Themen 9
J String-Typ in einen generischen Typ T umwandeln Allgemeine Java-Themen 6
N Vergleich von generischen Typen Allgemeine Java-Themen 2
B generischen Typ prüfen Allgemeine Java-Themen 7
C Methodenzugriff eines generischen Objekts Allgemeine Java-Themen 3
S Überschriebene Methode eines generischen Typen aufrufen Allgemeine Java-Themen 4
B Sortieren mit generischen Datentypen Allgemeine Java-Themen 3
M nochmal was mit generischen Containern Allgemeine Java-Themen 4
F Kann man keine Arrays von generischen Typen erstellen? Allgemeine Java-Themen 2
S Innerer Type einer generischen Collection herausfinden? Allgemeine Java-Themen 13
G generische Klasse als Parameter einer generischen Klasse Allgemeine Java-Themen 5
J Suche Doku um generischen Code zu erstellen. Allgemeine Java-Themen 9
D Listen von Generischen Typen inkl. Vererbung Allgemeine Java-Themen 2
G genauen Typ einer generischen Klasse zur Laufzeit ermitteln Allgemeine Java-Themen 2
G Syntax-Fehler beim aufrufen von generischen Klassenmethoden Allgemeine Java-Themen 4
S Problem mit meiner generischen Klasse Allgemeine Java-Themen 5
D ObjectStream auf generischen Listentyp Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben