# A propos du design de vos objets, des getters et setters, de equals/hashCode et de la mutabilité

DevFeed: [A propos du design de vos objets, des getters et setters, de equals/hashCode et de la mutabilité](<https://devfeed.tech/articles/a-propos-du-design-de-vos-objets-des-getters-et-setters-de-equals-hashcode-et-de-la-mutabilite-26046.md>)

Original publisher: [Read original article](<https://blog.arkey.fr/2010/03/30/a-propos-du-design-de-vos-objets-des-getters-et-setters-de-equalshashcode-et-de-la-mutabilite/>)

Author: brice.dutheil@gmail.com (Brice Dutheil)

Published: 2010-03-30T18:20:52Z

Content type: tutorial

Language: fr

Sources: [The Coffee Workshop](<https://devfeed.tech/sources/the-coffee-workshop.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [maintenance](<https://devfeed.tech/topics/maintenance.md>), [test](<https://devfeed.tech/topics/test.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [maintenance](<https://devfeed.tech/tags/maintenance.md>), [object](<https://devfeed.tech/tags/object.md>), [test](<https://devfeed.tech/tags/test.md>), [tests](<https://devfeed.tech/tags/tests.md>)

## AI overview

This article examines object design in Java, focusing on encapsulation, JavaBean getters and setters, mutability, and the implementation of equals and hashCode. It explains how publicly exposed state can make maintenance harder and how omitting equals and hashCode causes objects to use Object's identity-based behavior.

## Source excerpt

Prologue A l'école nos professeurs nous apprenaient ce qu'était la programmation orientée objet; en particulier l'encapsulation. En effet avoir un accès public aux variables internes d'un objet n'est pas particulièrement recommandé, pourtant nous avons connaissons tous la convention JavaBean :