If you think that MS changed from Windows 9 to Windows 10 for the likes of Java I think that you're naive. For their own Windows APIs, they might have done it, but not for a competitor. That's the competition's problem. However this is the reason they deprecated the exact API that returns the Marketing Name in favor of one that uses the Kernel number instead. Even then people were coding for minor vs major kernel versions. MS could have bumped it up to Kernel 7.0 and things would still break if coders were careless.
MS has slowly been breaking backwards compatibility since Vista especially with the Windows 9x kernels. At this point how many versions of current Windows programs still run on Win 9x and not newer versions? Considering that it was 20 years old, I would say very few.