Instanciar classes dinâmicamente  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
balancin
Thread.start()
[Avatar]

Membro desde: 06/05/2006 20:37:25
Mensagens: 36
Offline

Boa noite Pessoal,

Alguém sabe como posso fazer para instanciar classes dinâmicamente? Ou seja, imagine que tenho as classes carro, moto e bicicleta, quero instancia-las por uma váriavel que virá com o nome dela, na prática algo como
new Variavel();

Como posso fazer isso no java?

Obrigado!
[MSN]
kaique
GUJ Ranger
[Avatar]

Membro desde: 10/04/2006 07:06:06
Mensagens: 911
Localização: Fortaleza-CE
Offline

Dê uma pesquisada sobre Java Reflection API...
Para dar mais uma ajudinha, aqui no GUJ tem um tutorial dando uma explicação inicial sobre Reflection...
http://www.guj.com.br/java.tutorial.artigo.10.1.guj

[]'s.

/**
*
* Carlos Henrique
* carlosce@gmail.com
* kaiquece@hotmail.com
*
* Sun Certified Programmer for the Java 2 Platform, SE 5.0
* Sun Certified Web Component Developer for J2EE 1.4
* Sun Certified Bussiness Component Developer for J2EE 1.3
*
*/
[MSN]
maquiavelbona
JWizard
[Avatar]

Membro desde: 29/06/2006 09:06:51
Mensagens: 2447
Localização: São Paulo - SP
Offline

Muito medo disso. Isso me lembra de códigos em PHP que eu pego de vez em quando para mexer.


Até!

This message was edited 2 times. Last update was at 11/10/2007 07:32:16


----------------------------------------------------------------
"Within a few years a simple and inexpensive device, readily carried about, will enable one to receive on land or sea the principal news, to hear a speech, a lecture, a song or play of a musical instrument, conveyed from any other region of the globe. "
Nikola Tesla - A means for furthering Peace (1905)

"Gedanken ohne Inhalt sind leer, Anschauungen ohne Begriffe sind blind."
Immanuel Kant - Kritik der reinen Vernunft (1781)
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

maquiavelbona wrote:Muito medo disso. Isso me lembra de códigos em PHP que eu pego de vez em quando para mecher.


Até!


Qual o problema?
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
kaique
GUJ Ranger
[Avatar]

Membro desde: 10/04/2006 07:06:06
Mensagens: 911
Localização: Fortaleza-CE
Offline

Eu acho Reflection um recurso sensacional...
E para desenvolver frameworks então...é uma mão na roda...

[]'s.

/**
*
* Carlos Henrique
* carlosce@gmail.com
* kaiquece@hotmail.com
*
* Sun Certified Programmer for the Java 2 Platform, SE 5.0
* Sun Certified Web Component Developer for J2EE 1.4
* Sun Certified Bussiness Component Developer for J2EE 1.3
*
*/
[MSN]
maquiavelbona
JWizard
[Avatar]

Membro desde: 29/06/2006 09:06:51
Mensagens: 2447
Localização: São Paulo - SP
Offline

cv wrote:...
Qual o problema?

Que tem gente que se emploga. Nunca tive a infelicidade de pegar um assim, mas não faz muito tempo, fuçando na internet, vi alguns códigos bizarros com 4 '$' juntos. Nem sei se funciona, achei que não há tanta necessidade assim para um absurdo.

Até!

----------------------------------------------------------------
"Within a few years a simple and inexpensive device, readily carried about, will enable one to receive on land or sea the principal news, to hear a speech, a lecture, a song or play of a musical instrument, conveyed from any other region of the globe. "
Nikola Tesla - A means for furthering Peace (1905)

"Gedanken ohne Inhalt sind leer, Anschauungen ohne Begriffe sind blind."
Immanuel Kant - Kritik der reinen Vernunft (1781)
rodkruger
Debugger

Membro desde: 17/08/2005 09:16:50
Mensagens: 60
Localização: Brasil
Offline

Uma boa razão para não usar o esquema do PHP com $variavel é a manutenção do código.

Pra saber o que um código faria se usasse isso, seria necessário debugar!

SAP Certified Consultant NetWeaver 04 - Web Application Development - Focus JAVA

Sun Certified Java Programmer Standard Edition 5.0

Rodrigo Kruger
rodkruger@yahoo.com
Java & Linux, since 2002
[MSN] [ICQ]
lucazbrandt
HelloWorld
[Avatar]

Membro desde: 10/11/2006 23:36:14
Mensagens: 12
Localização: Bruxelas - Belgica
Offline

Bom dia


Cara vc pode utilizar o seguinte comando:

Class.forName("NOmeDaClasse").newInstance();

espero ter ajudado!!!

Vlw
[Email] [Yahoo!] [MSN]
balancin
Thread.start()
[Avatar]

Membro desde: 06/05/2006 20:37:25
Mensagens: 36
Offline

No meu caso é framework mesmo.
Se o programador for lógico não tem problema nenhum ;p
[MSN]
maquiavelbona
JWizard
[Avatar]

Membro desde: 29/06/2006 09:06:51
Mensagens: 2447
Localização: São Paulo - SP
Offline

Uso para reflection tem e eu acho muito importante que tenha. O único problema é que você apresente essa ferramenta a uma pessoa e essa mesma pessoa ache que ela serve para tudo e para todos.
"If the only tool you have is a hammer, you tend to see every problem as a nail" - Abraham Maslow.

Isso é perigoso demais.

Até!

----------------------------------------------------------------
"Within a few years a simple and inexpensive device, readily carried about, will enable one to receive on land or sea the principal news, to hear a speech, a lecture, a song or play of a musical instrument, conveyed from any other region of the globe. "
Nikola Tesla - A means for furthering Peace (1905)

"Gedanken ohne Inhalt sind leer, Anschauungen ohne Begriffe sind blind."
Immanuel Kant - Kritik der reinen Vernunft (1781)
cv
Moderador
[Avatar]

Membro desde: 04/04/2003 00:32:12
Mensagens: 7842
Localização: São Paulo, SP
Offline

maquiavelbona wrote:
cv wrote:...
Qual o problema?

Que tem gente que se emploga. Nunca tive a infelicidade de pegar um assim, mas não faz muito tempo, fuçando na internet, vi alguns códigos bizarros com 4 '$' juntos. Nem sei se funciona, achei que não há tanta necessidade assim para um absurdo.

Até!


Sei la, indirecao e coisas desse genero sao bem uteis. Vai de quem usa, nao eh necessariamente um defeito da linguagem (muito pelo contrario - eu me recusaria a aprender ou usar qualquer linguagem inventada nesse seculo que nao tenha algo parecido com Object#send() )
[Email] [WWW] [Yahoo!] [MSN] [ICQ]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team