[quote="miojo"][quote="volnei"]
Object o = Class.forName("pacote.pacote1.nomeDaClasse").newIstance();
Porém a classe deve implementar um construtor default (sem argumentos).
:!:
nao necessariamente... :)
reflection r0x
Bem lembrado Miojo, você pode através de reflection pegar os construtores de uma classe e criá-la com o construtor que você quiser passando os parâmetros... :!:
reflection rOx a lot! :!:
09/04/2009
Carlos Barretto
certo, e como acesso os atributos deste objeto depois??
09/04/2009
Carlos Barretto
Bom aí acho melhor você dar uma olhadinha na API Reflection.. :!:
09/04/2009
Carlos Barretto
[quote="volnei"]
Object o = Class.forName("pacote.pacote1.nomeDaClasse").newIstance();
mas neste caso o Object "o" não recebe a instancia????
Tutoriais.......
[url=http://www.javafree.com.br/forum/viewtopic.php?t=1393]Reflections em Java[/url]
[url=http://www.javafree.com.br/forum/viewtopic.php?t=1394]Reflections em Java 2[/url]
Reflection r0x :o :o :o
[]'s
09/04/2009
Lucas Teixeira
Volnei...
acho que ele queria criar nao um objeto de uma determinada classe.... e sim a referencia...
tipo assim
public void passaReferencia(String str) {
String 'str' = new String("lucas");
}
acho que eh isso... q ele queria definir o nome da referencia, e nao do objeto..
:/
09/04/2009
Carlos Barretto
vou explica melhor!
tenho uma classe Despesa que precisa instanciar Compra
e
tenho uma classe Aluno que precisa instanciar Endereco
mas ´preciso usar a mesma chamada para as duas mas com parametros diferentes do tipo
instancia = criarInstancia("Compra");
instancia = criarInstancia("Endereco");
é meio maluco mas acreditem preciso disso!
09/04/2009
Carlos Barretto
e o resultado tem que ser como se eu fizesse
Compra instancia = new Compra();
Endereco instancia = new Endereco();
09/04/2009
Carlos Barretto
é.... realmente eu me confundi....
é com reflection msm...
:?
09/04/2009
Carlos Barretto
[quote="JavaTeco"]Talvés isto:
public class Teste {
public static Object getClass (String nameClass) {
try {
return (Class.forName(nameClass)).newInstance();
}
catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
public static void main(String args[]) {
String name = (String)getClass("java.lang.String");
name = "JavaFree";
System.out.println(name);
}
}
valeu, vou tentar resolver a partir deste exemplo, quaslquer resultado posto aqui!!
09/04/2009
Fábio Guimarães
Se vc quiser passar parâmetros para construtor ou chamar métodos, seria interessante criar uma classe, onde por exemplo, vc adiciona parâmetros para um determinado método.
09/04/2009
Carlos Barretto
[quote="JavaTeco"]Se vc quiser passar parâmetros para construtor ou chamar métodos, seria interessante criar uma classe, onde por exemplo, vc adiciona parâmetros para um determinado método.
blz, realmente o que eu perguntei deu certo!!!!
Obrigado a todos que me ajudaram!! e principalmente ao exemplo prático do Java Tico,, ops... Java Teco... hehehehe :!: