SóProvas


ID
2486005
Banca
FGV
Órgão
IBGE
Ano
2017
Provas
Disciplina
Programação
Assuntos

Uma classe em Java declarada com o modificador final, não pode:

Alternativas
Comentários
  • Classes final

    Uma classe com este modificador não pode ser estendida, isto é, não pode ter classes que herdam dela.

    Isso é importante para garantir que uma determinada implementação não tenha seu comportamento modificado. Isso tem muito a ver com a imutabilidade.

    Tipos básicos do Java como String e Integer são final porque se espera que o conteúdo não possa ser modificado. O problema é que seu alguém pudesse criar uma subclasses de String, esta implementação poderia passar a ser mutável. Uma String mutável seria o caos na terra para implementações, pois vários pressupostos que os desenvolvedores usam no dia-a-dia seriam simplesmente desfeitos.

    public final class String implements java.io.Serializable, Comparable, CharSequence { ... }

     

    https://pt.stackoverflow.com/questions/17015/qual-o-uso-de-uma-vari%c3%a1vel-est%c3%a1tica-ou-final-em-java#17136

  • atributo final não pode ser modificado

    método final não pode ser sobreescrito, redefinido

  • abstract - Não pode ser instanciada

    final - Não pode ser estendida

  • O modificador final: 

     

       - Variável: Uma variável final não pode ter seu valor alterado

     

       - Método: Um método final não pode ser sobrescrito, mas pode ser herdado.

     

       - Classe: Uma classe final não pode ser estendida / herdada

     

  • Quem não tem acesso:  - -> E