Minha duvida e a seguinte, gostaria de criar um ArrayList de um Objeto em especifico porem no Java eu só estou conseguindo armazenar a referencia desse objeto então se eu acabar alterando o objeto instanciado em si para criar um novo objeto com novas informações eu perco as informações do primeiro, gostaria de saber se tem alguma forma de forçar o Java a armazenar a Instancia do Objeto.
Segue um Exemplo de como estou tentando fazer hoje
String linhaALinha;
while((linhaALinha = bfReader.readLine()) != null) {
listaDPL.add(assigner.assignData(linhaALinha)); // assigner.assignData(linhaALinha) retorna um objeto que e definido pelo assigner de acordo com a String
System.out.println(listaDPL.get(i));
}