If the JVM includes the return type in signature, it makes sense. However, why is this not allowed in Java, then?