Why const keyword is not used in Java? [duplicate]

Can you see reasons for closing the request, does Sun provides any explanations?

Yes. Sun provided 3 reasons for why they won’t act on the request in the request itself. I quote:

“There are no current plans to add this feature to Java. In
addition to creeping featurism, we see the following problems
with this feature:

  1. Adding const is too late now. Had this been added from 1.0,
    the situation could have been different.

  2. Const pollution: the C++ approach requires all const methods
    to be marked with a const keyword. This means that most
    methods will have to be marked const explicitly. This tend
    to clutter all methods in C++.

  3. Compatibility is a very important feature of the JDK.
    Arguably, the collection classes should be modified to
    indicate that the elements are const. That would
    require all existing implementations to be updated in
    the same way, effectively breaking all existing non-JDK
    implementations of the collection interfaces. Similarly,
    hashCode would have to be const, breaking the current
    implementation of String.”


UPDATE

Out of curiousity, I spent a few minutes trawling through the subject lines of the Project COIN mailing list. Somewhat to my surprise, nobody bothered to suggest const. (Or if they did, I missed it.)

So either nobody cares (enough) for this idea any more, or people with sufficient expertise to formulate a project COIN proposal recognize that there’s no chance that it would pass muster.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)