It's not Java, it's the programmer. There are lots of non-hacker types churning out inefficient code using inefficient abstractions.
There are also people using Java for high-frequency trading application with realtime performance needs.
It's true! If memory serves from the Jane Street podcast, the literal NYSE ran for years on a single-threaded Java application. I still struggle to wrap my head around the wizardry that kind of thing must have required.
Actually a few years ago I knew that a significant percentage of option trading routed through a VBA+Access+Excel product developed by a Montreal company (forgot the name) and the earliest code started from 1998.