Tenho uma duvida sobre a eficiência de um certo problema que parecia ser bem simples.
Tinha feito uma prova de Java na faculdade e tinha um exercício q possuía somente a classe main onde havia a instancia de quatro objetos , cada uma com uma quantidades de parâmetros diferentes, todos inteiro. O exercício queria q fizéssemos o programar copilar corretamente.
Para isso faltava criar os construtores então eu criei quatro construtores fazendo a sobrecarga do método, porem meu prof deu errado na questão dizendo q apesar do programa copilar correto, o mais correto seria utilizar o vararg por ser mais eficiênte.
Agora a duvida é pq o vararg é mais eficiente que a sobrecarga de método?
Abaixo vou colocar um trecho do código, acho q da para entender.
public class TesteConstrutor {
public TesteConstrutor() {}
public TesteConstrutor(int a) {}
public TesteConstrutor(int a, int b) {}
public TesteConstrutor(int a, int b, int c) {}
}
public static void main(String[] args) {
int n1 = 1;
int n2 = 2;
int n3 = 3;
TesteConstrutor t1 = new TesteConstrutor();
TesteConstrutor t2 = new TesteConstrutor(n1);
TesteConstrutor t3 = new TesteConstrutor(n1, n2);
TesteConstrutor t4 = new TesteConstrutor(n1, n2, n3);
}
Por favor, se alguém poder me explicar ficaria grato.
Valeu galera.
