JavaRush /Blog Java /Random-FR /Aide-mémoire "Utiliser le mot-clé final"
Ирина
Niveau 10

Aide-mémoire "Utiliser le mot-clé final"

Publié dans le groupe Random-FR
Cet article fournit les utilisations de base du mot-clé final dans la programmation Java. Des descriptions brèves et claires de la situation de la candidature vous aideront à apprendre rapidement le matériel. Le mot-clé final a des interprétations différentes selon l'endroit où il est utilisé dans le programme. Mais l'essence de ce mot est la même : une interdiction du changement . En effet, en appliquant ce mot à l'une des essences du langage Java : une variable, un objet, une méthode ou une classe, on en fait une constante, une valeur stable et immuable, à l'image de la coiffure du chanteur Joseph Kobzon... Je vous le rappelle d'une brève définition d'une constante. Constante est une quantité constante (scalaire ou vectorielle) en mathématiques, physique, chimie. Une constante mathématique est une quantité dont la valeur ne change pas ; en cela, c'est le contraire d'une variable. Regardons 4 cas où l'on peut utiliser le mot final .

1. Création d'une constante d'un type de données primitif.

Ici, la valeur MY_CONST ne peut pas être modifiée. Ainsi, si vous écrivez le mot final à côté d’une variable primitive, alors c’est une constante.
public class MyClass{
	public final int MY_CONST = 13;
}

2. Création d'une constante de type référence.

Ce code ne provoquera pas d'erreur, mais seulement jusqu'à ce que vous attribuiez une nouvelle valeur à la variable s1 . Autrement dit, le mot final pour les types référence interdit la modification de la référence, et non de l'objet vers lequel pointe la référence. Il convient également de noter que l'affectation est valable n'importe où dans le programme, mais une seule fois.
public class MyClass2{
	public final String s1;
	public MyClass2() {
		s1 = new String();
	 }
}

3. Interdiction de surcharger une méthode dans une classe descendante

Le mot final à côté d'une méthode interdit de remplacer cette méthode dans les classes descendantes.
public class Example{
	public final void hello() {
	System.out.println(Hello my people!);
	}
}
Autrement dit, si vous créez une classe qui hérite de l'exemple et que vous y écrivez le code suivant, une erreur se produira :
public class ExtendedExample extends Example{
	public void hello() {
		System.out.println("Extended hello everyone!!!");
	}
}

4. Interdiction de créer une classe descendante

Une classe finale est une classe qui ne peut pas être une superclasse, c'est-à-dire qu'il est interdit d'écrire des descendants pour elle.
public final class MyClass3 {

 }
Auteur : Irina Volgina
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION