No meu projeto Java, eu tenho um vetor de vários tipos de Traders. Estes diferentes tipos de comerciantes são subclasses da classe Trader. Agora, eu tenho um método que leva um comerciante como um argumento e armazena 50 ou mais vezes no vector. Estou tendo problemas porque armazenar o mesmo objeto 50 vezes é apenas armazenar 50 referências de um mesmo objeto. Eu preciso armazenar 50 cópias do objeto. Eu pesquisei sobre a implementação de Clone , mas eu não quero que os programadores definem um tipo de Trader ter que se preocupar em fazer sua classe cloneable. Além disso, como apontado por esta página , implementando clone cria todos os tipos de problemas. Eu não acho que um construtor de cópia quer trabalhar, porque se eu definido um na classe Trader, não saberia o tipo de comerciante que estava copiando e apenas fazer um Trader genérico. O que eu posso fazer?
Edit: Eu não estou realmente querendo fazer cópias exatas de um certo objeto. O que eu estou realmente tentando fazer é adicionar um certo número de comerciantes ao vetor. O problema é que o usuário precisa especificar um argumento que tipo de Trader ele quer adicionar. Aqui está um exemplo do que estou tentando fazer: (embora a minha sintaxe é completamente imaginário)
public void addTraders(*traderType*)
{
tradervect.add(new *traderType*())
}
Como posso conseguir algo parecido com isso em Java?













