Construtores com Argumentos

2 respostas
H

Alguém poderia comentar as linhas de código abaixo ? Este código é um exemplo de como criar objetos dinâmicamente, preciso entender muito bem como ele funciona para poder criar um código que funcione para outros tipos de objeto.

Muito obrigado,

Hugo.

import java.lang.reflect.;
import java.awt.
;

class SampleInstance {

public static void main(String[] args) {

Rectangle rectangle;
  Class rectangleDefinition;
  Class[] intArgsClass = new Class[] {int.class, int.class};
  Integer height = new Integer(12);
  Integer width = new Integer(34);
  Object[] intArgs = new Object[] {height, width};
  Constructor intArgsConstructor;

  try {
    rectangleDefinition = Class.forName("java.awt.Rectangle");
    intArgsConstructor = 
        rectangleDefinition.getConstructor(intArgsClass);
    rectangle = 
        (Rectangle) createObject(intArgsConstructor, intArgs);
  } catch (ClassNotFoundException e) {
      System.out.println(e);
  } catch (NoSuchMethodException e) {
      System.out.println(e);
  }

}

public static Object createObject(Constructor constructor,
Object[] arguments) {

System.out.println ("Constructor: " + constructor.toString());
  Object object = null;

  try {
    object = constructor.newInstance(arguments);
    System.out.println ("Object: " + object.toString());
    return object;
  } catch (InstantiationException e) {
      System.out.println(e);
  } catch (IllegalAccessException e) {
      System.out.println(e);
  } catch (IllegalArgumentException e) {
      System.out.println(e);
  } catch (InvocationTargetException e) {
      System.out.println(e);
  }
  return object;

}
}

2 Respostas

cariocathi

Hugo, há vários tutoriais, artigos e respostas sobre isso no GUJ pesquise um pouco tb no www.google.com.br. Você vai achar MUITA coisa sobre o assunto inclusive livros para download.

Bons estudos.

H

Ok, pessoal. Alguém teria um exemplo mais simples do que o que eu pedi para comentar sobre Construtores com Argumentos.

O que eu preciso é criar metodos que criem objetos passando parâmetros, exemplo: quero criar um label, com a descrição “User”, com fonte negrito.

Alguém pode ajudar ?

Obrigado.

Criado 15 de setembro de 2003
Ultima resposta 16 de set. de 2003
Respostas 2
Participantes 2