Gostaria de criar um construtor com um parâmetro opcional, para evitar fornecer Strings o tempo todo, porque preciso usar o construtor umas mil vezes, então gostaria de chamar métodos para alguns parâmetros, como cor, com as mesmas 10 opções todas as vezes.
Não quero digitar constantemente "prata", "prata antiga", "bronze antigo", "ouro rosa" etc. com "", e ter que digitar tudo por extenso. Eu adoraria ter o parâmetro pré-condicionado com métodos que alterassem a cor da minha String de acordo com o método que acabei de chamar.
Aqui está o construtor na classe Charms:
public Charms(String charmName, //here is the place for the color// , String charmMaterial, double bulkPrice, int piecesPerBulk) {
this.charmName = charmName;
this.charmColor = //here is the place for the methods where I want to have the options//;
this.charmMaterial = charmMaterial;
this.bulkPrice = bulkPrice;
this.piecesPerBulk = piecesPerBulk;
this.pricePerPiece = bulkPrice / piecesPerBulk;
}
Aqui estão alguns dos métodos que eu adoraria que funcionassem na classe Optionc:
private String color;
public void silverColor(String color) {
this.color = "silver";
}
public void ancientSilverColor(String color) {
this.color = "ancient silver";
}
public void antiqueBronzeColor (String color){
this.color = "antique bronze";
}
public void roseGoldColor(String color) {
this.color = "rose gold";
}
Então, quando eu chamo isso na classe Components:
Charms sewingCharms = new Charms("sewingCharms", //here i just start to call whichever method I want for color and it runs smoothly//, "metal", 785.69, 20);
Eu estava tentando descobrir se precisava de um switch para os métodos para chamá-los em um lugar ou de um if-else encapsulado em um construtor ou outro método, mas parece que não funciona para mim e agora meu cérebro está sobrecarregado.
Obrigado por qualquer ajuda, críticas gentis são bem-vindas, por favor, não me humilhem, ainda estou aprendendo e tentando.