2. Nested classes are mis-named (public static class???)
3. No Operater Overloading
4. Swing (Speaks for itself)
5. No way to create a value type
6. JNI - Hard to use, annoying, and difficult to marshal.
7. NIO buffers - You cannot ever force memory collection, they seem to leak very easily. Tend to lead to:
8. Java out of memory errors (All too common) - Even on production servers!
9. Fonts - You can never get an accurate metric (Its always off by a few pixels)
10. JVM Garbage Collection - Go ahead and try to garbage collect a Built up JTree... It won't happen.
Bonus:
11. You can't even do math with the Box'ed versions of Integer, Double, Float, etc.
12. You cannot do a non-virtual call, its always virtual.
13. Generics are just auto casts.
14. The CLASSPATH.
#Edit#
This list was requested by
By the way, these weakness's are some of c#'s strengths in my opinion.
I swear I'll try to get some useful posts soon! Got to talk about fonts and stuff still.