Boa noite…
Gostaria de saber qual o problema que tem este código:
import java.util.ArrayList;
public class Principal {
public static void main(String[] args) {
Fisica pessoa = new Fisica();
ArrayList<Fisica> apessoa = new ArrayList<Fisica>();
pessoa.Inserir("Julio", "25", "Antonio", "Maria");
apessoa.add(pessoa);
pessoa.Inserir("Antonio", "3", "José", "Joana");
apessoa.add(pessoa);
pessoa.Inserir("Madalena", "25", "Jorge", "Sandra");
apessoa.add(pessoa);
pessoa.Inserir("Luciano", "45", "Manuel", "Maria");
apessoa.add(pessoa);
System.out.println(apessoa);
//System.out.println(pessoa);
}[/code]
Tenho uma arrayList do tipo Fisica().. Estou add as pessoas, mas ao imprimir sai a ultima pessoa repetidas vezes.
Exemplo: [Nome: Luciano Idade: 45 Pai: Manuel Mae: Maria, Nome: Luciano Idade: 45 Pai: Manuel Mae: Maria, Nome: Luciano Idade: 45 Pai: Manuel Mae: Maria, Nome: Luciano Idade: 45 Pai: Manuel Mae: Maria]
e tenho uma a classe Modelo que segue a baixo:
[code]package arrayList;
public class Fisica extends Pessoa{
private String pai;
private String mae;
public String getPai() {
return pai;
}
public void setPai(String pai) {
this.pai = pai;
}
public String getMae() {
return mae;
}
public void setMae(String mae) {
this.mae = mae;
}
public void Inserir(String nome, String idade, String pai, String mae){
super.setNome(nome);
super.setIdade(idade);
this.pai = pai;
this.mae = mae;
}
@Override
public String toString() {
return "Nome: "+ super.getNome()+" Idade: "+super.getIdade()+" Pai: "+getPai()+" Mae: "+ getMae();
}
}
Tentei tirar o toString e coloquei no main assim System.out.println(apessoa.get(0).getNome()); e saiu o ultimo nome “Luciano” no exemplo era pra sair o nome “Julio” que esta na posição 0…
Se puderem me ajudar fico grato…