SóProvas


ID
260236
Banca
FCC
Órgão
TRT - 4ª REGIÃO (RS)
Ano
2011
Provas
Disciplina
Programação
Assuntos

Existem circunstâncias onde métodos específicos não devem ser implementados em uma classe, porém apenas fornecidas suas especificações. O emprego de um modifi- cador em Java 6 permite a declaração de um protótipo (método sem bloco de código), adiando sua implemen- tação para subclasses. Trata-se do modificador

Alternativas
Comentários
  • - Upcasting e downcasting está relacionado a conversão de tipos "pai para filho" e "filhos para pai"
    - Interface também não há implementação, somente a definição dos métodos para utilização nas classes que a erdadem.
    - Object é basicamente um tipo primitivo de dados. Uma variável declarada do tipo Object "Aceita" receber qualquer outro tipo de estrutura de dados, desde um tipo definido como integer, double, string e outros como um tipo mais comprexo como por exemplo uma classe responsável por envio de email.

    sendo assim sobrou somente a letra (C).
  • Alguém poderia explicar por que a resposta não poderia ser letra A (Interface)?
  • -Interface é como se fosse um "Padrão" de classe, ou seja, toda classe que implementa uma interface, obrigatóriamente terá que declarar os métodos da interface.

    Já um método com um modificador abstrato garante para sua classe, que se por ventura alguém herdar tua classe, este terá que declarar sua classe.

    Agora, faz oito anos que trabalho com desenvolvimento em .net, porém, nunca tive alguma situação onde eu tivesse que fazer uso de métodos abstratos. Já o uso de interface tona o código muito mais estruturado e elegante.

    Espero ter ajudado..

  • A princípio eu também marquei a letra A (interface), já que na interface vc não pode implementar métodos, mas eu não interpretei bem o enunciado.

    Existem circunstâncias onde métodos específicos não devem ser implementados em uma classe....

    Mas podem existir outros momentos onde vc poderá implementar os  métodos, e como na interface NUNCA implementará métodos, então só sobra abstract.
     

  • Concordo com que falou acima, no enunciado não dá para diferenciar. Pode ser interface ou abstract. Entrar com pedido para cancelar a questão.

    Quando diz: "Existem circunstâncias onde métodos específicos não devem ser implementados em uma classe," não dá para interpretar que posso implementar depois, assim seria abstrata, porém a questão afirma que não deve ser implementada os métodos, volta para interface. Agora minha dúvida quando diz emprego de um modificador. É relação a ser public, private ou protegido? Se sim, tanto abstract como interface tem.
  • Posso estar enganada, mas eu cheguei à resposta abstract porque a questão diz que a implementação é adiada para as subclasses. Sendo assim, entendo que estamos nos referindo à uma hierarquia de classes, onde um método abstrato é definido na superclasse e implementado pela subclasse. Para isso, usamos o modificador abstract. Já a interface é a capacidade que o Java oferece para que classes não relacionadas possam implementar métodos comuns.
  • O comando da questão pede:

    "Existem circunstâncias onde métodos específicos não devem ser implementados em uma classe, porém apenas fornecidas suas especificações."

    Na interface, TODOS os métodos são abstratos. O enunciado pede uma situação onde métodos específicos - não todos - não devem ser implementados (abstratos). Podem existir outros métodos implementados junto com os abstratos.

    []s
  • Pessoal,

    conforme já foi idto, o ponto-chave da questão é que ela fala em herança:

    "O emprego de um modifi- cador em Java 6 permite a declaração de um protótipo (método sem bloco de código), adiando sua implemen- tação para subclasses."

    Com isso, nao podemos pensar em Interface, já que uma classe nao herda uma interface, e sim, a implementa. Logo, só poderia ser classe abstrata.
  •  c)abstract.

    Um abstract method não é implementado, somente declarado. Somente as subclasses podem ter implementações para metodos abstratos.

  • "Trata-se do modificador": a palavra reservada Interface não é um modificador. Exemplos de modificadores:

    static, final, protected, private, etc.