Un objet immuable dans la programmation, une fois que vous avez créé et initialisé il , ne peut jamais changer son état . Cela peut sembler contre-productif depuis le point de la programmation est de manipuler les données . Toutefois, par la conception de vos classes pour éliminer les endroits où leurs données peuvent changer , vous pouvez supprimer des catégories entières de problèmes potentiels de votre programme. Cela garantit que les données sont toujours valables et vos classes sont automatiquement thread-safe, et vous n'avez pas à vous soucier d'oublier d'initialiser les membres de votre classe. Choses que vous devez environnement de développement intégré (IDE) comme Eclipse ou NetBeans Afficher plus Instructions 1 Déclarez votre classe comme final: class MyClass { public final ... } Cela empêche l'héritage de votre classe , ce qui peut nuire à son immuabilité . 2 Déclarez vos champs membres comme définitive : ... privé leNombre final int ; privé theName final String ; ... Cela force le compilateur pour s'assurer que les champs de membres ne changent pas après l'initialisation 3 initialiser les champs de membres dans le constructeur : . MyClass publique (int leNombre , String theName ) { this.theNumber = leNombre ; this.theName = theName ; } 4 Ajouter méthodes pour obtenir permettre l'accès aux champs : ... public int getTheNumber () { de leNombre de retour; } getTheName public String () { de theName de retour; } 5 ajouter une logique de validation pour le constructeur afin de s'assurer qu'elle crée votre objet correctement . Par exemple, si votre code s'attend leNombre d'être toujours entre 0 et 100 , vous pouvez vérifier cela et lever une exception (travaux IllegalArgumentException ) . MyClass publique (int leNombre , String theName ) { Si ( leNombre < = this.theNumber = leNombre ; this.theName = theName ; } Cette étape vous permet de savoir tout cas réels de votre classe sont valables . 6 Pour éviter l'ennui de initialisation de tous les domaines dans le constructeur de classes avec un grand nombre de champs de membres, remanier en plus petits " objets de paramètre . " en créant des petits objets qui contiennent les données dont vous avez besoin en groupes logiques , vous réduisez le nombre de paramètres dans la signature de votre constructeur , tout en conservant l'immutabilité .
|