Die Java Guidelines for Wildcard Use sagt:Sollte eine Methode Klasse oder Klasse <?> zurückgeben?
einen Platzhalter als Rückgabetyp verwenden sollten vermieden werden, da es Programmierern mit dem Code zwingt mit Wildcards zu beschäftigen.
Die Object
getClass
Methode liefert eine Class<?>
. Die verschiedenen Methoden in Class
akzeptieren eine Class<?>
und wenn Sie eine Class
übergeben, gibt der Compiler eine ungeprüfte Warnung zurück. Dies führt zu der Annahme, dass immer die Verwendung von Class<?>
vorzuziehen ist.
Wenn ich eine Methode habe, die eine Class
zurückgibt, und ich weiß nicht, wie dieses Objekt verwendet wird, welchen Typ sollte ich Class
oder Class<?>
zurückgeben? Warum? Gibt es Szenarien, in denen ich einfach Class
zurückgeben möchte?
@CPerkins, wie ich das Zitat verstehe, das Sie zur Verfügung gestellt haben, sprechen sie über die vier oben genannten Aufzählungspunkte. Es folgt eine "Richtlinie" für Rückgabetypen in dem Zitat, das ich in meiner Frage angegeben habe. Es ist nicht nur getClass, sondern auch die ungeprüften Warnungen bei der Verwendung von Klassenmethoden, die dies in Frage stellen. –