A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Capítulo 2. Generics  Novo recurso de linguagem surgida a partir da versão 5  Permite a utilização de tipos parametrizados por classes e métodos tornando-os.

Apresentações semelhantes


Apresentação em tema: "Capítulo 2. Generics  Novo recurso de linguagem surgida a partir da versão 5  Permite a utilização de tipos parametrizados por classes e métodos tornando-os."— Transcrição da apresentação:

1 Capítulo 2

2 Generics  Novo recurso de linguagem surgida a partir da versão 5  Permite a utilização de tipos parametrizados por classes e métodos tornando-os flexíveis para uso  Recurso extremamente útil na utilização de estruturas de dados 2

3 Generics  Simples estruturas de dados (bag) public class BolsaString { private String valor; public String getValor() { return valor; } public void setValor(String valor) { this.valor = valor; } public class BolsaInteger { private Integer valor; public Integer getValor() { return valor; } public void setValor(Integer valor) { this.valor = valor; } 3

4 Generics  Simples estruturas de dados (bag) BolsaString bolsa1 = new BolsaString(); bolsa1.setValor(“E o vento levou!”); String s = bolsa1.getValor(); BolsaInteger bolsa2 = new BolsaInteger(); bolsa2.setValor(2012); Integer i = bolsa2.getValor(); 4

5 Generics  Simples estrutura de dados (bag) com generics public class Bolsa { private T valor; public T getValor() { return valor; } public void setValor(T valor) { this.valor = valor; } 5

6 Generics  Simples estrutura de dados (bag) com generics Bolsa bolsa1 = new Bolsa (); bolsa1.setValor(“E o vento levou!”); String s = bolsa1.getValor(); Bolsa bolsa2 = new Bolsa (); bolsa2.setValor(2012); Integer i = bolsa2.getValor(); 6

7 Outro exemplo public class Trio { private T primeiro; private T segundo; private T terceiro; public T getPrimeiro() { return primeiro; } public void setPrimeiro(T valor) { this.primeiro = valor; } public T getSegundo() { return segundo; } } 7

8 Outro exemplo Trio trio1 = new Trio (); trio1.setPrimeiro(39); trio1.setSegundo(63); trio1.setTerceiro(15); Trio trio2 = new Trio (); trio2.setPrimeiro(“Huguinho”); trio2.setSegundo(“Zezinho”); trio2.setTerceiro(“Luizinho”); 8

9 Múltiplos generics public class Trio { private T primeiro; private U segundo; private V terceiro; public T getPrimeiro() { return primeiro; } public void setPrimeiro(T valor) { this.primeiro = valor; } public U getSegundo() { return segundo; } } 9

10 Múltiplos generics Trio trio1 = new Trio (); trio1.setPrimeiro(39); trio1.setSegundo(“Canela”); trio1.setTerceiro(new Produto()); Trio trio2 = new Trio (); trio2.setPrimeiro(“João”); trio2.setSegundo(new Date(1982, 6, 12)); trio2.setTerceiro(2450.3); 10

11 Métodos genéricos public class Exemplo { /* Método sem generics */ public static String ultimoItem(String[ ] array) { if (array == null || array.length == 0) return null; else return array[array.length - 1]; } /* Método com generics */ public static T ultimoItem(T[ ] array) { if (array == null || array.length == 0) return null; else return array[array.length - 1]; } } 11

12 Exercício  Copie as classes abaixo para dentro de um novo projeto do Eclipse: Pessoa Cachorro Gato Cor  Crie uma classe chamada Casal contendo dois atributos: marido e mulher. Estes atributos deverão ser de um tipo genérico especificado pela classe Casal.  A classe Casal também deverá possuir os métodos get e set para ambos os atributos mencionados acima. 12

13 Exercício (continuação)  Crie em seguida uma classe chamada Start contendo o método main().  Dentro deste método crie 3 casais: 1 de Cachorro, 1 de Gato e 1 de Pessoa, especificando as características de cada indivíduo ao instanciá-los.  Exiba o conteúdo de cada casal conforme mostrado no próximo slide 13

14 Exercício (continuação) Casal de cachorros: Marido: Rex - Pastor Alemão Mulher: July - Boxer Casal de gatos: Marido: Bilbo - Amarelo Mulher: Susie - Branco Casal de pessoas: Marido: João - 26 anos Mulher: Maria - 22 anos 14


Carregar ppt "Capítulo 2. Generics  Novo recurso de linguagem surgida a partir da versão 5  Permite a utilização de tipos parametrizados por classes e métodos tornando-os."

Apresentações semelhantes


Anúncios Google