Utilizando o Generics para instanciar objetos  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
baison
JavaChild

Membro desde: 30/01/2008 00:13:52
Mensagens: 141
Offline

E aí pessoal. blz ?

Seguinte, estou querendo fazer algo assim, porem nao compila:



Tem como fazer isso ou não ?

VLW

Analista de Sistemas
Desenvolvedor JAVA
OCPJP em 2011
[MSN]
Paulo Silveira
Administrador
[Avatar]

Membro desde: 07/08/2002 18:38:50
Mensagens: 4204
Localização: São Paulo
Offline

infelizmente não... voce nao sabe o tipo T em tempo de execução... (perceba que voce tambem nao saberia se T tem um construtor default)

voce vai precisar receber essa Class tambem como argumento... do mesmo jeito como em um dao genério.

http://blog.caelum.com.br/2007/04/08/generics-inferencia-de-tipos-e-reificacao-no-java-7/

This message was edited 1 time. Last update was at 18/02/2008 20:32:59


http://blog.caelum.com.br twitter: @paulo_caelum


[Email] [WWW]
baison
JavaChild

Membro desde: 30/01/2008 00:13:52
Mensagens: 141
Offline

Paulo Silveira wrote:infelizmente não... voce nao sabe o tipo T em tempo de execução... (perceba que voce tambem nao saberia se T tem um construtor default)

voce vai precisar receber essa Class tambem como argumento... do mesmo jeito como em um dao genério.

http://blog.caelum.com.br/2007/04/08/generics-inferencia-de-tipos-e-reificacao-no-java-7/


Kra, muito obrigado pela sua resposta, porem, nao consegui entender muito bem o que deve ser feito.

Tem como você colocar um exemplo ?

VLW

Analista de Sistemas
Desenvolvedor JAVA
OCPJP em 2011
[MSN]
Marcio Duran
GUJ Master
[Avatar]

Membro desde: 23/01/2008 11:14:35
Mensagens: 1905
Offline

baison wrote:
Kra, muito obrigado pela sua resposta, porem, nao consegui entender muito bem o que deve ser feito.

Tem como você colocar um exemplo ?


hummmm!!!!

Opssss, algo aleatório !!!!!


Um exemplo no GUJ mesmo, acho que esse é menos abstrato que os demais Já citados




Generic class declarations

Busque as regras dessa aplicação de Genéricos no Livro da Kathy Sierra/Bert Bates
Existem diferentes tipos de sintaxe genérica (Capítulo 7:Genéricos e Conjuntos Página 330)

No Forum Javaranch tem exemplos interessantes fora o embate técnico é de alto nível.

http://saloon.javaranch.com

Abaixo outro exemplo: tirado do javaranch

This message was edited 8 times. Last update was at 19/02/2008 20:39:32


Consultor Open Source
Comunidade JavaLivros
Twitter Comunidade JavaLivros
Novo Blog do MiddleHeaven
[WWW]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

baison wrote:Kra, muito obrigado pela sua resposta, porem, nao consegui entender muito bem o que deve ser feito.

Tem como você colocar um exemplo ?


O que o paulo disse é que pra fazer o que você quer tem que ser alguma coisa assim:


Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20581
Localização: Curitiba/PR
Offline

Maurício Linhares wrote:
O que o paulo disse é que pra fazer o que você quer tem que ser alguma coisa assim:


Embora isso acabe com a segurança em tempo de compilação. Por exemplo, se você mudar o construtor, esse código só dará erro em Runtime.
Isso também é problemático se usa classe também precisar de generics.

Infelizmente, generics não são os templates do C++. Se fossem, dava para fazer isso tranquilo.


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
baison
JavaChild

Membro desde: 30/01/2008 00:13:52
Mensagens: 141
Offline

Pois é.. em C++ é trank.

Mas blz.. vlw pelas respostas.

Analista de Sistemas
Desenvolvedor JAVA
OCPJP em 2011
[MSN]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

ViniGodoy wrote:Infelizmente, generics não são os templates do C++. Se fossem, dava para fazer isso tranquilo.


O que? Genéricos?

Genéricos em Java não existem, isso é intriga da oposição

É realmente uma pena que os genéricos do Java sejam são simplórios

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
Paulo Silveira
Administrador
[Avatar]

Membro desde: 07/08/2002 18:38:50
Mensagens: 4204
Localização: São Paulo
Offline

ViniGodoy wrote:

Embora isso acabe com a segurança em tempo de compilação. Por exemplo, se você mudar o construtor, esse código só dará erro em Runtime.



Se voce mudar o construtor, nao vai nem compilar... nao é tao ruim assim nao

http://blog.caelum.com.br twitter: @paulo_caelum


[Email] [WWW]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Paulo Silveira wrote:Se voce mudar o construtor, nao vai nem compilar... nao é tao ruim assim nao


Acho que o Viny se referiu ao contrutor de T Paulo, se você mudar ele (ou remover o construtor default) o código compila perfeitamente, mas vai lançar uma exeção em tempo de execução.

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20581
Localização: Curitiba/PR
Offline

Maurício Linhares wrote:
Paulo Silveira wrote:Se voce mudar o construtor, nao vai nem compilar... nao é tao ruim assim nao


Acho que o Viny se referiu ao contrutor de T Paulo, se você mudar ele (ou remover o construtor default) o código compila perfeitamente, mas vai lançar uma exeção em tempo de execução.


É isso mesmo.

Usando reflexão, você abre mão da verificação do compilador. É uma desvantagem importante, que muita gente esquece de levar em conta na hora de dizer se vale ou não à pena usar o recurso.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team