Declarar uma classe como final em Java significa que ela não pode ser herdada.
Isso protege sua implementação contra modificações e garante um comportamento estável.
final?Uma classe marcada como final:
final class SeloAmaldicoado {
void ativar() {
System.out.println("Selo ativado.");
}
}
Tentativa de herança:
class SeloAvancado extends SeloAmaldicoado {} // ❌ Erro de compilação
final em classes?Quando você quer garantir que o comportamento não será alterado via herança.
A JVM pode aplicar otimizações internas quando sabe que uma classe não será estendida.
Classes como Math, helpers e factories costumam ser final.