Olá, Métodos construtores servem para inicializar um objeto com algum valor. Ao contrário de outros métodos, um construtor não pode ser chamado diretamente. Em vez disso o Java chama tais métodos no momento em que o objeto é criado. O java faz três coisas quando o new é chamado para criar uma instância de classe: -Aloca memória para o objeto; -Inicializa as variáveis de instância desse objeto (essas variáveis estão definidas na classe que o objeto está instanciando) com valores iniciais (que podem ser passados através de métodos construtores) ou com valor padrão se não for definido nenhum valor inicial para essas variáveis (alguns dos valores padrões são: 0 para numeros, null para objetos, false para booleanos ou ainda '\0' para tipos char). - Chama o tal do método construtor da classe, que pode ser um dentre vários métodos definidos na classe que está sendo instanciada. A grosso modo, um método construtor serve para inicializar um objeto depois q ele é criado. Se não houver um método construtor na classe, o objeto será inicializado quando for usado (para chamar um método qq, setar valores de variáveis de instância etc.). O método construtor seta um valor inicial para alguma propriedade da classe, ou para chamar outros métodos que devem ser chamados quando um objeto é criado. Exemplo simples:
class Pessoa{ int idade; String nome; //método construtor.... Pessoa(int idade, String nome){ this.idade = idade; this.nome = nome; } // no método construtor eu atribui valores às variáveis de instância pessoa e idade.... //método que irá exibir os valores das variáveis de instância... void mostraDadosPessoa(){ System.out.println("Meu nome é: "+this.nome); System.out.println("Minha idade é: "+this.idade+" anos"); } public static void main(String arg[]){ Pessoa p = new Pessoa(23, "Antonio"); // eu atribui os valores 23 e Antonio para o método construtor... p.mostraDadosPessoa(); } } A saída do programa será a seguinte: Meu nome é: Antonio Minha idade é: 23 anos Considerações importantes sobre métodos construtores: - Sempre tem o mesmo nome da classe; - Não devem possuir nenhum tipo de retorno, nem mesmo void. Vc também pode fazer sobrecarga de métodos construtores para obter comportamentos diferentes (setar valores a outras variáveis de instância, chamar outros métodos etc.). Boa sorte! []´s Sávio Barros ----- Original Message ----- From: "Silva, Felipe A (Disoft)" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, February 12, 2003 9:19 AM Subject: [java-list] Construtores. Olá pessoal, sou iniciante e gostaria de pedir a ajuda de vcs. Gostaria que alguém me explicasse o conceito de construtores, com exemplos. Obrigado Felipe Augusto ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] ------------------------------------------------------------------------- ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------