|
|
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.
Online: 665 users browsing the articles directory
|
|