Prévia do material em texto
1. Em relação a tipos genéricos, marque a alternativa INCORRETA. A. O tópico genérico é extenso. B. Genéricos não são tipos primitivos de dados. C. Quando declaramos um atributo como String, estamos declarando como genérico. D. Com um genérico você pode definir um algoritmo apenas uma vez, independentemente do tipo de dados. E. Com genéricos, podemos reutilizar código. 2. Nos fundamentos dos tipos genéricos, quando utilizamos o termo “genérico”, estamos nos referindo a: A. Estrutura de herança. B. Um tipo primitivo de dados que pode receber qualquer valor. C. Quando uma aplicação pode ser executada sem o método main em java. D. Usamos variáveis de referência ao instanciarmos uma classe. E. Quando nos referimos a tipos parametrizados. 3. Para declararmos uma classe que utilizará tipos genéricos, utilizamos qual sintaxe? A. class NomeDaClasse{ //implementação. } B. class abstract NomeDaClasse{ //implementação. } C. class NomeDaClasse extends Generica{ //implementação. } D. class NomeDaClasse implements Generica{ //implementação. } E. class NomeDaClasse <Parâmetro de tipo>{ //implementação. } 4. Analise o código e marque a alternativa INCORRETA. 1 - class Gen<T>{ 2 - T ob; 3 - 4 - Gen(T o) { 5 - 6 - ob = o; 7 - 8 - } 9 - 10 - T getob(){ 11 - return ob; 12 - } 13 - 14 - void showType() { 15 - 16 - System.out.println("Type of T is " + ob.getClass().getName()); 17 - 18 - } 19 - } 20 - 21 - 22 - //Demonstra a classe genérica. 23 - 24 - class GenDemo { 25 - 26 - public static void main(String[] args){ 27 - 28 - Gen<Integer> iOb = new Gen<Integer>(88); 29 - 30 - iOb.showType(); 31 - 32 - int v = iOb.getob(); 33 - 34 - System.out.println("Value: " + v); 35 - 36 - System.out.println(); 37 - 38 - Gen<String> strOb = new Gen<String>("Generics Test"); 39 - 40 - strOb.showType(); 41 - 42 - String str = strOb.getob(); 43 - 44 - System.out.println("Value: "+ str); 45 - 46 - } 47 - } A. Veja o trecho de código escrito na linha 1. class Gen<T>{ A letra T, representa o nome de um parâmetro de tipo. B. Veja o trecho de código escrito na linha 2. T ob; Teremos um erro de compilação, pois não estamos definindo um tipo válido para o atributo ob. C. Veja o trecho de código escrito nas linhas 10,11 e 12. T getob(){ return ob; } Temos o método getob() que retorna um tipo T. D. Veja o trecho de código escrito na linha 28. Gen iOb = new Gen(88); Estamos criando uma versão de Gen para inteiros e atribuindo uma referência a iOb a uma instância da classe GEN. E. Veja o trecho de código escrito na linha 38. Gen strOb = new Gen("Generics Test"); Aqui, GenDemo está declarando um objeto do tipo Gen. 5. Marque a alternativa INCORRETA. A. Genéricos só funcionam com tipos de referência. B. Tipos genéricos diferem de acordo com seus argumentos de tipo. C. Classes genéricas podem ser declaradas com mais de um parâmetro. D. É recomendável que os nomes de parâmetros de tipos tenham apenas uma letra. E. As letras a serem utilizadas como nomes de parâmetros de tipos devem ser apenas “T”, “E” ou “V”.