Le mot clé final

Résolu
securinets Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   -  
securinets Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
private final Date dateCreationInstance = new Date();
qu'est ce que cela veut dire de mettre un objet final?
merci pour votre aide



A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Pour un attribut (ou une variable), cela signifie que tu ne peux donner qu'une seule fois une référence d'objet à cet attribut. Il y aura donc toujours un seul objet qui lui sera associé.

Remarque : utilisé sur un type primitif le mot clé "final" se comporte comme le mot-clé "const" des langages C/C++

Attention : ce n'est pas parce qu'un objet est final que sa valeur ne change jamais. Il est possible de lui appliquer des méthodes qui changeront sa valeur !
Ce qu'il est interdit de faire avec le mot-clé final c'est de changer l'objet.

Exemples :

int[] tab1 = {1,2,3};
tab1[0] = 4; // possible
tab1 = new int[5]; // possible

final int[] tab2 = {1,2,3};
tab2[0] = 4; // possible
tab2 = new int[5]; // impossible

Remarque : le mot clé final peut aussi s'appliquer à des classes, ou des méthodes, et bloque l'héritage. Voir Google et Wikipédia : final (Java)La confiance n'exclut pas le contrôle
1
securinets Messages postés 77 Date d'inscription   Statut Membre Dernière intervention   1
 
merci c'etait utile :)
0