Generic vom Generic: Zu sehr verschachtelt?

thomasmk

Mitglied
Hi @ll,

ich habe folgenden Quelltext:
Java:
public class AClass {}
Java:
public class ASubClass<E extends Object> extends AClass{}
Java:
public interface BInterface<O extends Object, A extends AClass> {}
Java:
public class CImplementingClass implements BInterface<Object, ASubClass<Object>>{}
Java:
public class ItemClass<E extends AClass, F extends BInterface<O, E>, O extends Object>
{
	public ItemClass(Class<E> c) {}
}
Java:
public class Main
{
	public static void main(String[] args)
	{
		// OK:
		new ItemClass<AClass, BInterface<Object, AClass>, Object>(AClass.class);
		// Nicht OK:
		// The constructor
		// ItemClass<ASubClass<Object>,CImplementingClass,Object>(Class<ASubClass>)
		// is undefined
		new ItemClass<ASubClass<Object>, CImplementingClass, Object>(
				ASubClass.class);
		// Nicht OK:
		// Bound mismatch: The type CImplementingClass is not a valid substitute
		// for the bounded parameter <F extends BInterface<O,E>> of the type
		// ItemClass<E,F,O>
		new ItemClass<ASubClass, CImplementingClass, Object>(ASubClass.class);
		// Nicht OK:
		// Cannot cast from Class<ASubClass> to Class<ASubClass<Object>>
		new ItemClass<ASubClass<Object>, CImplementingClass, Object>(
				(Class<ASubClass<Object>>)ASubClass.class);
		// Fast OK (warning):
		// Type safety: The expression of type Class needs unchecked conversion to conform to Class<ASubClass<Object>>
		new ItemClass<ASubClass<Object>, CImplementingClass, Object>(
				(Class)ASubClass.class);
	}
}
Was ich tun möchte ist eine neue Instanz von ItemClass erstellen und dem Konstruktor als Parameter das Class-Objekt zur ASubClass übergeben.
Geht das ohne eine Warning zu generieren? Wie?

Edit: Da hatte ich doch die CImplementingClass vergessen...
Edit2: ItemClass-Constructor hinzugefügt
 
Zuletzt bearbeitet:

thomasmk

Mitglied

Marco13

Top Contributor
Ahso... ja, ist schon kompliziert. Eigentlich wäre das mindeste, was man bei so einer Fehlermeldung erwarten würde, dass er sagt, WAS denn die bounds sind :autsch: (Da müßte man sich mal irgendeine Utility-Klasse dafür basteln... :reflect: )

Mit
Code:
class ItemClass<E extends AClass, F extends BInterface<? extends O, ? extends E>, O extends Object>
{
    public ItemClass(Class<E> c) {}
}
geht das wohl, aber ... naja...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
L Datentypen Deklarierte Felder einer Generic Klasse bestimmen Java Basics - Anfänger-Themen 7
O Comparable Generic Java Basics - Anfänger-Themen 24
F Type safety: A generic array of.. Fehler Java Basics - Anfänger-Themen 3
Yjuq Generic Methode - Wie muss die List Definition aussehen? Java Basics - Anfänger-Themen 3
S Gibt es für die Klasse HashMap Generic Implementierungen? Java Basics - Anfänger-Themen 11
C Generic im Konstruktor Java Basics - Anfänger-Themen 1
O Generic - Verstädnisproblem Java Basics - Anfänger-Themen 5
G instanceof in Generic Java Basics - Anfänger-Themen 7
N Datentypen LocalDate Generic Comparable Java Basics - Anfänger-Themen 2
P Variablen generic type variablen in object array Java Basics - Anfänger-Themen 1
M Generic Prüfungsvorbereitung Java Basics - Anfänger-Themen 4
G Generic und Listen Java Basics - Anfänger-Themen 8
J Generic - Autoboxing Java Basics - Anfänger-Themen 18
N Generic clonen => eclipse empfiehlt @SuppressWarnings("unchecked") Java Basics - Anfänger-Themen 2
S Generic Java Basics - Anfänger-Themen 9
P Java Generic Wildcard Java Basics - Anfänger-Themen 2
G Namen der Generic Klasse Java Basics - Anfänger-Themen 3
D generic extendet class Java Basics - Anfänger-Themen 10
M Generic's und Vererbung Java Basics - Anfänger-Themen 6
B Generic? Enum - So lösbar? Java Basics - Anfänger-Themen 8
capgeti Datentypen Static generic return value von Subclass? Java Basics - Anfänger-Themen 9
C Generic Tutorial Java Basics - Anfänger-Themen 12
V libssrckdtree-j Generic k-d tree Java library - weiss nicht wo des hin soll Java Basics - Anfänger-Themen 2
L Sinn hinter Generic? Java Basics - Anfänger-Themen 5
0 Was bedeutet dieser Generic-code? Java Basics - Anfänger-Themen 3
A Generic Problem Java Basics - Anfänger-Themen 16
S Generic Methode: syntax klemmt Java Basics - Anfänger-Themen 10
S Generic: Verständnisfrage Java Basics - Anfänger-Themen 2
S generic programmierung "ne:w T[X]" Java Basics - Anfänger-Themen 2
G generic interface problem Java Basics - Anfänger-Themen 12
Safado generic array creation Java Basics - Anfänger-Themen 2
G Frage zur Generic java ? Java Basics - Anfänger-Themen 9
G eine Frage zur Generic Java ? Java Basics - Anfänger-Themen 8
D BigDecimal Ausgabe sehr lang. Java Basics - Anfänger-Themen 2
X Sehr schnelle agile Entwicklung Java Basics - Anfänger-Themen 1
M (Sehr großes Problem) Listen als static in anderen Klassen verwendet Java Basics - Anfänger-Themen 12
C Verarbeitung von sehr großen Dateien Java Basics - Anfänger-Themen 52
P Erste Schritte Console - Sehr komische Ausgabe! Java Basics - Anfänger-Themen 3
B sehr lange Srings in File schreiben Java Basics - Anfänger-Themen 4
Z Sehr simpler Taschenrechner - Hilfe! Java Basics - Anfänger-Themen 10
M Suche Hilfe bei sehr kleinen Quelltexten Java Basics - Anfänger-Themen 2
M Welche externen Bibliotheken sind in Java sehr zu empfehlen? Java Basics - Anfänger-Themen 4
C Einlesen in Array von Textdatei sehr langsam Java Basics - Anfänger-Themen 7
M sehr großes Byte Array Java Basics - Anfänger-Themen 3
R OutOfmemory Exception bei sehr großer Liste (Tomcat Webservice) Java Basics - Anfänger-Themen 4
H Sehr einfache Java-Programme Java Basics - Anfänger-Themen 24
Luk10 OOP Sehr allgemeine Schnittstelle Java Basics - Anfänger-Themen 19
S Input/Output Sehr langen String in Datei schreiben Java Basics - Anfänger-Themen 8
R ArrayList sehr viel schneller als Array? Java Basics - Anfänger-Themen 2
R Sehr einfache möglichkeit ArrayList oder Array zu initialisieren? Java Basics - Anfänger-Themen 8
R Sehr kleine doubles nicht in Exponentialdarstellung ausgeben Java Basics - Anfänger-Themen 3
B ABspeichern eines sehr grossen negativen Werts Java Basics - Anfänger-Themen 6
Beckenbauer Eine anstehende (sehr simple) Applikation in UML darstellen (Klassendiagramm) Java Basics - Anfänger-Themen 20
N Name zu sehr ähnlich??? Java Basics - Anfänger-Themen 12
E Reguläre Ausdrücke mit sehr variablen Eigenschaften Java Basics - Anfänger-Themen 2
Antoras Datei laden mit BufferedReader sehr langsam Java Basics - Anfänger-Themen 7
F Programm sehr langsam. Windows 7? Java Basics - Anfänger-Themen 23
S Eclipse .metadata ordner ist sehr gross! Java Basics - Anfänger-Themen 1
G Socket erstellen dauert sehr lange. Java Basics - Anfänger-Themen 4
D Sehr großer String lässt sich nicht bearbeiten Java Basics - Anfänger-Themen 7
G Verzeichnis auslesen mit sehr sehr vielen Bildern Java Basics - Anfänger-Themen 6
E Methode sehr langsam und funktioniert teilweise nicht Java Basics - Anfänger-Themen 3
S JFileChooser öffnet Unterverzeichnisse sehr langsam Java Basics - Anfänger-Themen 2
G Sehr eigenartige Datumsprobleme. Java Basics - Anfänger-Themen 2
I Schulprojekt !sehr wichtig! Java Basics - Anfänger-Themen 6
M sehr weit verschachtelte XML-datei mit jdom auslesen Java Basics - Anfänger-Themen 4
G g.drawLine arbeitet sehr ungenau. Java Basics - Anfänger-Themen 4
G sehr kleine Dezimalzahlen (BigDecimal) falsch angezeigt Java Basics - Anfänger-Themen 5
T Erste Schritte (SEHR mühsam); Grafiktest Java Basics - Anfänger-Themen 5
F Java Applikation ProjectX startet sehr langsam Java Basics - Anfänger-Themen 3
C FileInputStream sehr langsam Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben