Communiquez avec les autres et partagez vos connaissances professionnelles

Inscrivez-vous ou connectez-vous pour rejoindre votre communauté professionnelle.

Suivre

Why StringBuffer and StringBuilder has not overridden equals() and hashCode() in java ?

user-image
Question ajoutée par Mohd shahnawaz khan , Associate Project , Cognizant Technology Solution
Date de publication: 2014/12/27
Mohamed Alesh
par Mohamed Alesh , Independent Contractor / Consultant , Upwork (Engineering Team - APIs)

Design wise, I think they shouldn't override equals nor hashcode methods since they are just builder objects. The state for these objects is just the character array from the AbstractStringBuidler. Logically, you wouldn't need to check the equality of two builder objects (someone shouldn't really care about the state of the builder) rather you need to check the equality of what is being built, which is the target String object in this case.

Mohammed Mozakir
par Mohammed Mozakir , Software Developer , Traitsys Technology Pvt. Ltd.

Because it is a mutable 

pardeep kumar
par pardeep kumar , Senior R & D Engineer , Mavenir Systems

Simplest reason is that because they are mutable in Java.  Understand the concept of immutability in String, you get to know automatically why these methods are not overridden. 

More Questions Like This