Talk:Generics in Java
Reflection example not correct
I removed the following text, as it isn't correct:
It is possible to work around this limitation to some extent by using Java's reflection mechanisms. If an instance of class
Tis available, one can obtain from that object theClassobject corresponding toTand usejava.lang.reflect.Array.newInstanceto create the array.
Let's say I have toArray(List<T> list) with at least one element. I call this using a List<Number> containing Integers and Floats. Array.newInstance() using my first element of my list (which an instance of class Number) I end up with an array of type Integer[]. When I try to add a Float to the array, my program will fail with an error.
Now, it is possible if I pass in a Class<T> as in toArray(List<T> list, Class<T> clazz). Calling Array.newInstance(clazz, list.length()) will work just fine. However, I don't think it's worth mentioning this in the actual article. —Matthew0028 07:50, 11 December 2006 (UTC)
Anti-Java bias
This article only tells what the problems are with Java generics. It doesn't even tell you how to use any of the generic features, like the For-next loop or autoboxing. —The preceding unsigned comment was added by Ed Poor (talk • contribs) 22:30, 7 February 2007 (UTC).
- Indeed. It doesn't even define Generics. The first sentence talks about when they were added to the language, and the second goes right into comparison with C++. This article needs work. --King Mir 01:52, 13 February 2007 (UTC)
- This article used to be part of the generic programming page (but you know that already), which provided a little more context on the subject. I agree it should at least mention how it can help with type safety (even if only to a degree) and readability (same footnote), and can prevent the need for casts. (Note that foreach and autoboxing don't really require generics, they were in the C# language before it introduced generics.) Perhaps some examples that show the good points would be nice too. - Chip Zero 15:38, 13 February 2007 (UTC)
Anti-Java bias Updated
Removed the Anti-Java Content, Added viable examples, Corrected Incorrect Example.
This is not a facility to compare Java to other languages; If a comparison is useful, it has every reason to be here.
Please take the time to remove negative/spiteful content when ever possible.
Thank you =)
Feb 2008 edits
I tried to improve content of this article. We certainly have to start with relevant to this subject Java language specifications - then to go down to examples. I do not see any reason for autoboxing/unboxing section here - it has nothing to do with generics. Also, nested generics 'explained' here by an example - are simply ugly.--Stagalj (talk) 00:08, 13 February 2008 (UTC)