A melhor maneira de explicar um construtor é dando exemplos. Mas fazendo uma breve explicação, num construtor tu defines as características de um objecto que será instanciado. Essas características fazem dele particular/diferente do padrão. Dando um exemplo:
import javax.swing.*;
public class janela extends JFrame {
janela(String s) { //método construtor da minha própria janela
super(s); // isto faz o mesmo que new JFrame(s); em que s é o título da janela
setSize(200,200);
setResizable(false);
}
public static void main (String args[]) {
JFrame minhajanela = new janela("Minha janela!");
}
}
Como podes ver, criei a minha própria janela apartir do construtor, especificando o seu tamanho, por exemplo. Sei que foi uma explicação rasca mas deve ter dado para perceber alguma coisa eheh
com o construtor vc criar os objetos da class para acessar os metodos nao static… exemplo:
class C{
public void metodo(){}
public static void main(String ar[]){
C c = new C();
c.metodo();
}
}
noa tem como vc chamar o metodo() sem ter uma instancia da class, ja que ele nao é static…
Bom um ponto fundamental de construtores é que vc pode inicializar explicitamente suas variaveis de instancia… um exemplo semelhante quando vc vai criar um e-mail, a maioria do provedor sugere um endereço certo? isso acontece com os construtores… vc pode ter um objeto dog que ja vai ter um nome… ou pode dar um novo nome pra ele exemplo…
class Animal{
String nome;
Animal(String n){
nome=n;
}
public static void main(String ar[]){
//to criando uma instancia e ja com nome
Animal dog = new Animal("rex");
System.out.println(dog.nome);
}
}
espero ter ajudado! a medida que aprofundar no assunto vc vai ver q construtores nao tem muita coisa especial nao. hehe acaba se acostumando com eles… as vezes vc nem vai conseguir viver sem eles