In Java bindings, wrap version constants into functions to prevent inlining

Java inlines static finals if they're defined with a constant expression. In case of version constants we don't want that to happen, since they obviously change from version to version. If the user substitutes a different OpenCV
jar without recompiling, we want user code to still have relevant values for the version constants.

This arranges that by turning constant values into function calls, which no longer count as a constant expression.