Java is not really slow, if implemented well. This is just a reputation it has gotten.
Something which I realized and made me understand why the return type is not part of the sigure, is the question “what happens if you just call a method, but not assign the return value to a variable?” If you have two methods with the same name, and parameters, and the only difference is the return type, how would you decide what method to call, if you have not the slightest idea which one of them is meant? As you are not required to assign the return value to anything, you have no indication.
I still cant believe that oracle did it that bad, that people switched off the JDK just entirely
Some interesting features altho some of them are still preview.