Java and C++ are often found in huge, legacy, or enterprise oriented code bases.
The are plenty of ways to use the abstractions in Java and C++ to write nice code. Just like it is possible to find a Scala or Clojure code base that went crazy with the usage of "cutting edge" features and abstractions in those languages.
And at least with Java, your IDE will always be able to navigate the code effectively.