JavaRush /Java Blog /Random-IT /Foglio informativo "Utilizzo della parola chiave finale"
Ирина
Livello 10

Foglio informativo "Utilizzo della parola chiave finale"

Pubblicato nel gruppo Random-IT
Questo articolo fornisce gli usi di base della parola chiave final nella programmazione Java. Descrizioni brevi e chiare della situazione applicativa ti aiuteranno ad apprendere rapidamente il materiale. La parola chiave finale ha interpretazioni diverse a seconda di dove viene utilizzata nel programma. Ma l'essenza di questa parola è la stessa: divieto di cambiamento . Infatti, applicando questa parola a una delle essenze del linguaggio Java: una variabile, un oggetto, un metodo o una classe, ne facciamo una costante, un valore stabile e immutabile, come l'acconciatura del cantante Joseph Kobzon... Lascia che te lo ricordi di una breve definizione di costante. Costante è una quantità costante (scalare o vettoriale) in matematica, fisica, chimica. Una costante matematica è una quantità il cui valore non cambia; in questo è l'opposto di una variabile. Diamo un'occhiata a 4 casi in cui possiamo usare la parola final .

1. Creazione di una costante di un tipo di dati primitivo.

Qui il valore MY_CONST non può essere modificato. Pertanto, se scrivi la parola finale accanto a una variabile primitiva, allora è una costante.

public class MyClass{ 
	public final int MY_CONST = 13;
}

2. Creazione di una costante del tipo di riferimento.

Questo codice non causerà un errore, ma solo finché non assegnerai un nuovo valore alla variabile s1 . Cioè, la parola final per i tipi di riferimento proibisce la modifica del riferimento, non dell'oggetto a cui punta il riferimento. Vale anche la pena notare che l'assegnazione è valida ovunque nel programma, ma solo una volta.

public class MyClass2{ 
	public final String s1;   
	public MyClass2() { 
		s1 = new String();
	 } 
}

3. Divieto di sovrascrivere un metodo in una classe discendente

La parola finale accanto a un metodo impedisce di sovrascrivere questo metodo nelle classi discendenti.

public class Example{
	public final void hello() { 
	System.out.println(Hello my people!); 
	} 
}
Cioè, se crei una classe che eredita da Esempio e scrivi al suo interno il seguente codice, si verificherà un errore:

public class ExtendedExample extends Example{ 
	public void hello() { 
		System.out.println("Extended hello everyone!!!"); 
	} 
} 

4. Divieto di creare una classe discendente

Una classe finale è una classe che non può essere una superclasse, ovvero è vietato scriverne discendenti.

public final class MyClass3 {

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