In my experience with Java, the core language is small enough that every company pretty much uses the whole thing. Almost everyone has finally upgraded to using at least the Java 5.0 syntax by now. Occasionally you'll run across silly rules that prohibit things like the ternary operator or multiple returns, but those are minor differences.
The big differences come into play with frameworks. Depending on whether you're using Struts/JSF/Hibernate/Spring/etc your code may look completely different.
Occasionally you'll run across silly rules that prohibit things like the ternary operator or multiple returns
In avionics software, the ternary operator and multiple returns are often avoided to help ensure better code coverage during verification.
I don't think anyone is writing avionics software in Java? The automated code coverage tools I have seen handle those cases just fine.
My professional experience outside C++ is limited, but I had always assumed this was the same for other languages as well. Is C++ really that much of a different animal from other languages?