SóProvas


ID
5330413
Banca
Exército
Órgão
EsFCEx
Ano
2020
Provas
Disciplina
Programação
Assuntos

Na linguagem de programação Java, as classes abstratas

Alternativas
Comentários
  • Uma classe Abstrata contem métodos abstratos ou não abstratos e NÃO podem ser instanciadas diretamente, sua implementação deve ser feita em uma class herdada dela. Elas são como uma classe genérica, servindo de base para outras classes derivarem dela.

  • A definição do Mateus está equivocada.

    Uma classe abstrata pode ter métodos abstratos e métodos com implementação. Porém uma classe abstrata é uma classe incompleta e por esse motivo não pode ser instanciada.

    Uma classe abstrata fornece uma superclasse a partir da qual outras classes podem herdar e compartilhar um design comum.

    As classes que podem ser utilizadas para instanciar objetos são chamadas classes concretas. Essas classes fornecem implementações de cada método que elas declaram.

    Uma classe abstrata normalmente contém um ou mais métodos abstratos.

    Todos os métodos abstratos precisam ser definidos pela classe que herda ao menos que a subclasse seja abstrata também.

    Métodos abstratos só podem estar em classes abstratas.

    Obs: A questão deferia ser anulada, pois o Java permite ter métodos estáticos que podem ser invocados.

  • Analisando a questão:

    a) podem conter métodos estáticos, mas eles somente podem ser invocados a partir de instâncias de classes derivadas. - Errado. Como é afirmado na letra 'E' os métodos estáticos da classe podem ser invocados diretamente.

    b) somente registram a definição dos métodos, sem uma implementação. A implementação deve ser obrigatoriamente fornecida pela classe derivada. - Errado. Definição de Interface.

    c) não podem ser derivadas por outras classes abstratas. - Errado. Classes abstratas podem definir outras classes abstratas.

    d) não podem conter métodos finais. - Errado. Classes abstratas podem conter métodos finais.

    e) podem conter métodos estáticos e estes podem ser invocados. Correto

    Definição de Classe Abstrata:

    É uma classe que serve de modelo para outras classes, sempre será genérica, e suas subclasses serão mais específicas. Não pode ser diretamente instanciada e pode ou não conter métodos abstratos, sendo que estes devem ser implementados nas classes descendentes. Uma classe abstrata pode implementar ou não um método, sendo obrigatória a existência de pelo menos um método abstrato (sem corpo).

    Obs.: Não confundir com Interfaces, em que todos os métodos são abstratos e devem ser implementados, a Interface é um 'contrato' que quando assumido por uma classe deve ser implementado.

    Gabarito E