Modern Java can be OOP, functional or procedural where useful. GoF patterns were never enforced by the language.
Or maybe that's even a bit rude to GoF. Some OO patterns - pretty questionable ones - were pushed pretty hard especially in Java EE.
Even then, you were never forced to use Java EE if you didn't need it.
Fwiw, I like that class names and file names must match. In python codebases I have had annoyances with this when I adopted others work.
As far as Java use in companies is an indicator, the horse is still running.