Une stratégie pour définir les objets immuables dans une application de Java

  

Les règles suivantes définissent une stratégie simple pour créer les objets immuables. Non toutes les classes documentées comme "immuables" suivent ces règles. Ceci ne signifie pas nécessairement que les créateurs de ces classes étaient mouillés ils peuvent avoir la bonne raison de croire que les exemples de leurs classes ne changent jamais après construction. Cependant, de telles stratégies exigent l'analyse sophistiquée et ne sont pas pour des débutants.

1. Ne fournissez pas les méthodes d'"poseur", les méthodes qui modifient des champs ou des objets visés par des champs.

2. Rendez tous les champs finals et privés.

3. Ne laissez pas les sous-classes dépasser des méthodes. La manière la plus simple de faire ceci est de déclarer la classe en tant que finale. Une approche plus sophistiquée est rendre le constructeur privé et de construire des exemples dans des méthodes d'usine.

4. Si les champs d'exemple incluent des références aux objets mutables, ne laissez pas ces objets être changé :

Ne fournissez pas les méthodes qui modifient les objets mutables.

Ne partagez pas les références aux objets mutables. Ne stockez jamais les références aux objets externes et mutables passés au constructeur ; au besoin, créez les copies, et stockez les références aux copies. De même, créez les copies de vos objets mutables internes si nécessaire pour éviter de renvoyer les originaux dans vos méthodes.

c'est un article supplémentaire par Clain Brand


Déni : Notre site Web n'est pas responsable de l'information contenue par cet article. Cet article reflète nullement les vues, les avis, les pensées ou la croyance du personnel d'annuaire d'articles.

Notification de traduction : L'article "une stratégie pour définir les objets immuables dans une application de Java" a été traduit en utilisant un service de traduction automatisé. Nous faisons des excuses sincèrement pour toutes les erreurs de traduction qui se sont produites. Merci de l'arrangement.

Online: 665 users browsing the articles directory