SóProvas


ID
1117492
Banca
CESGRANRIO
Órgão
FINEP
Ano
2014
Provas
Disciplina
Programação
Assuntos

Seja o seguinte programa Java:

import java.util.*;

public class Main {
       public static void main(String[ ] args) {
              Collection a=new TreeSet( );
              Set b=new TreeSet( );
              Set c=(new HashMap( )).values( );
              SortedSet d=new TreeSet( );
              Deque e=new LinkedList( );
       }
}

Qual comando produz um erro de compilação?

Alternativas
Comentários
  • Para resolver essa questão e similares tem que conhecer ( decorar ) as interfaces e implementações das collections.

    Não postarei nenhum link pois existem diversos na internet cada um com uma implementação.Quanto a questão, o HashMap deveria implementar a interface MAP. As demais implementações estão corretas.
  • A questão trata de uma Coleção que contém Interfaces e Implementações (das interfaces):

    São exemplo de Interfaces e Implementações:

    Deque = ArrayDeque | LinkedList

    Set = HashSet | TreeSet | LinkedHashSet

    List = ArrayList | LinkedList | Stack | Vector

    Map = HashMap | TreeMap | LinkedHashMap

    É só saber a lista e associar a cada um :

    Collection a=new TreeSet( ); // Se trata da coleção em si, que contém todas as implementações (OK)

    Set b=new TreeSet( ); // TreeSet está na lista de implementações de Set. (OK)

    Set c=(new HashMap( )).values( ); // HashMap está acossiado a Map, e não a Set! (ERRADO)

    SortedSet d=new TreeSet( ); // SortedSet é extensão de Set. TreeSet é implementação do Set. (OK)

    Deque e=new LinkedList( ); // LinkedList está nas implementações de Deque (OK)

    GABARITO (C)