SóProvas


ID
1753072
Banca
FCC
Órgão
TRT - 9ª REGIÃO (PR)
Ano
2015
Provas
Disciplina
Programação
Assuntos

Em Java as interfaces são tipos especiais de classes que podem conter 

Alternativas
Comentários
  • Dentro das interfaces existem somente assinaturas de métodos e propriedades, cabendo à classe que a utilizará realizar a implementação das assinaturas, dando comportamentos práticos aos métodos.




    Fonte: http://www.devmedia.com.br/entendendo-interfaces-em-java/25502
  • A partir do Java8 é possível incluir uma implementação padrão (default) para os métodos de interfaces.

    https://docs.oracle.com/javase/tutorial/java/IandI/defaultmethods.html

  • Considerando que o Java 8 esta aí desde março de 2014, essa questão é um erro grosseiro.

     

     

  • Os métodos sem implementação são chamados de abstratos.

    Gabarito:

    d) X.

  • Interfaces:

    ·         Uma interface não é considerada uma Classe e sim uma Entidade.

    ·         Não possui implementação, apenas assinatura, ou seja, apenas a definição dos seus métodos sem o corpo.

    ·         Todos os métodos são abstratos.

    ·         Seus métodos são implicitamente Públicos e Abstratos.

    ·         Não há como fazer uma instância de uma Interface e nem como criar um Construtor.

    ·         Funcionam como um tipo de "contrato", onde são especificados os atributos, métodos e funções que as classes que implementem               essa   interface são obrigadas a implementar.

     

    http://www.devmedia.com.br/interfaces-x-classes-abstratas/13337

  • a) ERRADO - A partir do Java 8, lançado em 2014, é possível ter métodos implementados em interfaces, chamados de "defender methods". A alternativa fala em métodos setter que são usados para atualizar atributos. Nas interfaces é possível ter atributos, entretanto, esses atributos são constantes, no qual seus valores não podem ser alterados.
    b) ERRADO - Nas interfaces os métodos são sempre públicos.
    c) CORRETO - A partir do Java 8, é possível ter métodos estáticos. Lembrando que o enunciado fala: "podem conter..." Nada impede de uma interface ter apenas métodos estáticos. O enunciado com essa alternativa não fala que em interfaces, de forma genérica, só podem ter métodos estáticos.
    d) CORRETO - Conforme visto antes, o Java 8 prevê a inclusão de métodos implementados em interfaces. Entretanto, novamente unindo enunciado e a alternativa falam da possibilidade de ter uma interface com assinatura de métodos sem uma implementação. É possível.

    e) ERRADO - Interfaces não tem construtores, por isso não podem ser instanciadas.

     

    Acredito que a questão queria cobrar os conceitos de interfaces em Java anteriores à versão 8. Porém, como a questão é de 2016 e não especificou a versão do Java, é PASSÍVEL DE ANULAÇÃO