I'm with you, even as a Java developer I can immediately recognize when something was written in Java: it's ugly and slow. When it crashes, you know they missed a NPE or tried to use multiple threads.
Minecraft's menus absolutely have that hacky terribleness feeling. It's still much better than Minecraft Bedrock (the C++ reimplementation), but it's also noticeably behind everything else