SóProvas


ID
1035376
Banca
CESPE / CEBRASPE
Órgão
PEFOCE
Ano
2012
Provas
Disciplina
Engenharia de Software
Assuntos

Com relação às linguagens de programação orientada a objetos, julgue os itens que se seguem.

Uma variável que não seja um parâmetro, declarada como do tipo de uma interface, pode referenciar qualquer objeto de qualquer classe que implemente a interface.

Alternativas
Comentários
  • Ok. Isso foi retirado do "Conceitos de Linguagens de Programação" do Robert W. Sebesta (P.572). Mas o que isso quer dizer?

  • supondo que existe uma classe chamada cachorro que implementa a interface animal posso ter uma variável do tipo animal que faz referência á um cachorro....só não entendi a parte do "Uma variável que não seja um parâmetro" pois pra mim seria para todas as variáveis.

     

    Private Cachorro cachorro = new Cachorro; 

    Private Animal cachorro = new Cachorro;

     

     

     

  • Gabarito: Certo

     

    Supondo que Animal seja a interface e Gato e Cachorro objetos que implementam essa inteface, há 2 cenários:

    // cenário 1 - variáveis não são um parâmetro

    Animal animal = new Gato(); // OK

    Animal animal = new Cachorro(); // OK

     

    // cenário 2 - variáveis são um parâmetro

    void meuMetodo(Animal animal) { ... }

    meuMetodo(new Gato()); // OK

    meuMetodo(new Cachorro()); // OK

     

    Portanto, ser ou não ser um parâmetro não faz diferença, o examinador colocou só pra confundir.

    "Uma variável que não seja um parâmetro, declarada como do tipo de uma interface, pode referenciar qualquer objeto de qualquer classe que implemente a interface." [ CERTO ]

    "Uma variável que seja um parâmetro, declarada como do tipo de uma interface, pode referenciar qualquer objeto de qualquer classe que implemente a interface." [ CERTO ]

    "Uma variável declarada como do tipo de uma interface, pode referenciar qualquer objeto de qualquer classe que implemente a interface." [ CERTO ]

    "Somente uma variável que não seja um parâmetro, declarada como do tipo de uma interface, pode referenciar qualquer objeto de qualquer classe que implemente a interface." [ ERRADO ]

    "Somente uma variável que seja um parâmetro, declarada como do tipo de uma interface, pode referenciar qualquer objeto de qualquer classe que implemente a interface." [ ERRADO ]

  • Em 13/07/2018, às 09:38:05, você respondeu a opção E.Errada!

    Em 06/08/2017, às 14:23:50, você respondeu a opção E.Errada!

    Em 01/05/2017, às 14:06:03, você respondeu a opção E.Errada!

    Em 05/03/2017, às 19:59:56, você respondeu a opção E.Errada!

    Em 16/10/2016, às 19:37:17, você respondeu a opção E.Errada!

     

    vou continuar errando até achar o rodapé de um livro com essa afirmação, pra mim esse "que não seja um parâmetro" torna errada a questão.