Hallo Michael,
Deine Argumentation leuchtet mir schon ein. Trotzdem stellt sich mir die Frage, warum ein Renderer, der als DefaultRenderer für den Typ Object gesetzt wird, nur Strings aber keine sonstigen Typen behandelt.
Wenn Integers und Booleans wie Strings als Objekte gesehen würden, dann müsste doch auch für sie ein solcher Renderer benutzt werden. Du schreibst:
Ich habe aber den DefaultRenderer nicht für die konkrete Klasse "String" sondern für die Klasse "Object" gesetzt. "Object" ist doch, so weit ich es verstanden habe, die Basisklasse der Java-Klassenhierarchie, damit gewissermaßen die Oberklasse aller Java-Klassen und selbst keine konkrete Klasse.
Wenn das aber so ist und ein für "Object" gesetzter DefaultRenderer ignoriert "Booleans" und "Numbers" (auch wieder die Oberklasse für "Integer", Double" etc.), dann muss man daraus doch schließen, dass Java für den Bereich der Renderer davon ausgeht, dass Wrapper-Objekte, also abstrakte Objekte für die fundamentalen Typen von Java (z.B. int, char, double, float, boolean) nicht als Objekte angesehen werden. Anders kann ich mir das nicht erklären.
Konrad