Bem estava lendo o artigo sobre Padroes e Projetos e Reflexao da revista mundo java e fikei com um duvida. O exemplo que ele utiliza sobre a classe Class é o seguinte :
1. public class Aluno {
2. private String nome;
3. private int matricula;
4.
5. public Aluno() {
6. }
7.
8. public String getNome() {
9. return nome;
10. }
11.
12. public void setNome(String nome) {
13. this.nome = nome;
14. }
15.
16. public int getMatricula() {
17. return matricula;
18. }
19.
20. }
1. public class TesteReflexao {
2.
3. public TesteReflexao() {
4. }
5.
6. public static void main(String[] args){
7. try{
8. Class c = Class.forName("Aluno");
9. System.out.println(c.getName());
10.
11. Aluno a = (Aluno) c.newInstance();
12.
13. }
14. catch(InstantiationException e){
15. e.printStackTrace();
16. }
17. catch(IllegalAccessException e){
18. e.printStackTrace();
19. }
20. catch(ClassNotFoundException e){
21. e.printStackTrace();
22. }
23. }
24. }
Minha dúvida é a seguinte, tem como fazer algo parecido assim :
1. public class TesteReflexao {
2.
3. private static String minhaClasse = "Aluno";
4.
5. public TesteReflexao() {
6. }
7.
8. public static void main(String[] args){
9. try{
10. Class c = Class.forName(minhaClasse);
11. System.out.println(c.getName());
12.
13. minhaClasse a = (minhaClasse) c.newInstance();
14.
15. }
16. catch(InstantiationException e){
17. e.printStackTrace();
18. }
19. catch(IllegalAccessException e){
20. e.printStackTrace();
21. }
22. catch(ClassNotFoundException e){
23. e.printStackTrace();
24. }
25. }
26. }