But I think const-ness is a very good idea. C++, it can be a real pain to properly implement proper const-ness on an object. Determining what methods change state and what ones don't can take a lot of time. That's my only problem with seeing this feature in Java.
Just like access control, const-ness is one of those nice-to-have features that raises the hurdles to getting a class ready for prime time. A "proper" C++ class is a pain to build. Overloading assignment operators, default constructors, copy constructors, destructors. It makes you not want to create a new class.
A nice part of Java is that you don't need to be a language lawyer to write code that works as a class is expected to.