Em Java, a palavra-chave const é uma palavra reservada, mas não é usada na linguagem. O conceito que você está procurando é implementado em Java usando a palavra-chave final.
Palavra-chave final
A palavra-chave final em Java é usada para definir constantes e garantir que uma variável, método ou classe não possa ser alterada ou extendida. Aqui está um resumo de como final é usado:
1. Variáveis final
Quando você declara uma variável com final, ela se torna uma constante e não pode ser alterada depois de ser inicializada.
public class Exemplo {
public static final int CONSTANTE = 100; // Declaração de uma constante
public static void main(String[] args) {
System.out.println(CONSTANTE);
// CONSTANTE = 200; // Isso causará um erro de compilação
}
}
Posts recentes
2. Métodos final
Quando um método é declarado como final, ele não pode ser sobrescrito por subclasses. Isso é útil quando você deseja garantir que o comportamento de um método não seja alterado por herança.
public class Pai {
public final void metodoFinal() {
System.out.println("Método final não pode ser sobrescrito.");
}
}
public class Filho extends Pai {
// Não é permitido sobrescrever o método metodoFinal()
// public void metodoFinal() { } // Isso causará um erro de compilação
}
3. Classes final
Quando uma classe é declarada como final, ela não pode ser estendida por outras classes. Isso é usado para impedir que a classe seja subclassificada.
public final class ClasseFinal {
// Implementação da classe
}
// Não é permitido estender a classe ClasseFinal
// public class OutraClasse extends ClasseFinal { } // Isso causará um erro de compilação
Resumo
- Variáveis final: Tornam a variável constante e não podem ser modificadas após a inicialização.
- Métodos final: Garantem que o método não possa ser sobrescrito por subclasses.
- Classes final: Impedem que a classe seja estendida por outras classes.
Exemplo Completo
Aqui está um exemplo que demonstra o uso de final em variáveis, métodos e classes:
public final class Constantes {
public static final int MAX_VALOR = 100;
public final void mostrarConstante() {
System.out.println("O valor máximo é: " + MAX_VALOR);
}
}
class Teste {
public static void main(String[] args) {
Constantes c = new Constantes();
c.mostrarConstante();
// c.MAX_VALOR = 200; // Isso causará um erro de compilação
// c.mostrarConstante(); // Isso está correto
}
}
Neste exemplo, MAX_VALOR é uma constante que não pode ser alterada, e o método mostrarConstante não pode ser sobrescrito por subclasses. A classe Constantes também não pode ser estendida.