Originally Posted by buffbiff21
Every conceivable resource hog.
A lot of the perceived bloat comes from craptacular GUI API's like swing. And memory usage isn't a huge deal anyways, unless you're in an embedded environment, how much does another gig of ram cost anyways?
It's certainly possible to write Java applications that aren't massive memory hogs... some of it comes from lazy programming style, people that are unfamiliar with pointers (and everything in java is a damn pointer, except primitives) and memory management (they like to tell you java takes care of this itself, but that sort of thinking breeds memory leaks because you figure the GC has it and you don't null pointers when you're done with them so the GC can clean them up, or never free up a listener, crap like that).