Yeah, and C++ had it since before Gosling decided C++ wasn't good enough for him.
Ever since its inception, Java has steadily acquired lame, non-generic, basically hacks of implementations for features in C++ which it strived so hard to shun. Mainly due to Gosling being not smart enough to really understand C++ in the first place. Honestly, read some interviews with him, he's just guts and bile about it, no logical arguments whatsoever, typical I-don't-get-it-therefore-it's-wrong, holier than thou attitude.
The tasteless, confused hamburger that Java is today is the result of its small minded creator and the barriers built in since the beginning. Doug Lea's work turned the crapfest Java was into a workable platform for serious applications, but that's about it.