Estou fazendo os diagramas de sequência do meu projeto, e existem várias formas pra entrar criar os objetos e entrar com os prarâmetros:
1- Create() vazio, q seria o construtor vazio, e passar os parêmetros pelo método: inserirCliente(cod, nome,tel), por exemplo. Ou ainda,
2-Create(cod, nome,tel) e inserirCliente(), agora o método sem parâmetros.
Qual a diferença? O que é mais indicado??
acredito que não há uma diferença que possa ser considerada, aí nesse caso o código mais indicado é aquele mais fácil de entender, o mais legível.
se alguem achar que tem uma diferença muito grande entre esses dois métodos posta aí por favor…é sempre bom saber…
valeu
Por que não cria os dois?
Se usar o com argumentos, insere automaticamente.
Se usar o sem argumentos, deve inserir depois.
Como um JLabel, por exemplo.
Pode-se usar:
label1 = new JLabel();
label1.setText("Rótulo");
label2 = new JLabel("Rótulo");
Ou seja, pode ter mais de um construtor.
Olá,
Seu construtor deve ter o mínimo suficiente para o objeto funcionar, deve suprir sua invariante.
por exemplo, um triângulo tem três ãngulos, então um cosntrututor deveria ser:
public Triangulo(Angulo a, Angulo b, Angulo c);
Se você fizer:
//1
Triangulo t = new Triangulo();
//2
t.addAngulo(a);
//3
t.addAngulo(b);
//4
t.addAngulo(c);
//5
Vai ter ume stado incosistente do objeto até chegar em //5.
Entretanto, um construtor não deve receber muitos parãmetros, então você pode providenciar uma Factory para evitar que seus objetos estejam em estado inconsistente.
Agora não entendi muito bem. Pq quando chegar na linha 5 vai estar inconsistente? O q é Factory?
Desculpe minha ignorância…
[quote=“AndreiaMarvel”]Agora não entendi muito bem. Pq quando chegar na linha 5 vai estar inconsistente? O q é Factory?
Desculpe minha ignorância…[/quote]
vai estar inconsistente pq um triângulo sempre tem 3 pontos, se tu instanciar um objeto triangulo sem esses 3 pontos, não será exatamente um triângulo, logo inconsistente… e Factory é um pattern… pesquise sobre :joia: