Boa tarde gente, sou novo no forum, e gostaria de uma ajuda suas.
Estou com um projeto de faculdade para fazer e estou com uma duvida cruel que nao consigo resolver.
Tenho uma classe pessoa.
[code]public abstract class Pessoa implements Comparable{
public static final int CLIENTE = 1;
public static final int VENDEDOR = 2;
public static final int FORNECEDOR = 3;
private int codigo;
private String nome;
private String telefone;
private String email;
private GregorianCalendar dataCad;
public Pessoa(int codigo, String nome, String telefone, String email,
GregorianCalendar dataCad) {
super();
this.codigo = codigo;
this.nome = nome;
this.telefone = telefone;
this.email = email;
this.dataCad = dataCad;
}
GET E SET estão implementados.
public abstract int getTipo();
public int compareTO(Pessoa o){
return nome.compareTo(o.nome);
}
@Override
public String toString() {
return "Codigo: " + codigo + "\n" +
"Nome: " + nome + "\n" +
"Telefone: " + telefone + "\n" +
"E-mail: " + email + "\n" +
"Data de Cadastro: " + dataCad;
}
[/code]
Até ai tudo blz…
Dai tenho uma classa Cliente que tem com o herança a classe pessoa.
public class Cliente extends Pessoa {
private String cpf;
private double limiteCredito;
public Cliente(int codigo, String nome, String telefone, String email,
GregorianCalendar dataCad, String cpf, double limiteCredito) {
super(codigo, nome, telefone, email, dataCad);
this.cpf = cpf;
this.limiteCredito = limiteCredito;
}
GET E SET AQUI NO MEIO
@Override
public String toString() {
return "CPF:" + LtpUtil.formatarCPF(cpf) + "\n" +
"Limite Credito: " + LtpUtil.formatarValor(limiteCredito, "#,##0.00");
}
@Override
public int getTipo() {
return 1;
}
@Override
public int compareTo(Pessoa o) {
// TODO Auto-generated method stub
return 0;
}
Obs: tenho mais duas outras classes, fornecedor e vendedor que são “filhos” da classe pessoa.
Blz, até ai tudo bem.
O problema é:
Tenho uma classe comercial que tenho que fazer todo o processamento de dado.
Dentro dela tenho que fazer uma arraylist tipo pessoa.
[code]import java.util.ArrayList;
import dados.Pessoa;
public class Comercial {
public static ArrayList<Pessoa> listaPessoas = new ArrayList<>();
}
[/code]
Minha duvida é:
Como faço a inclusão de um cliente em uma ArrayList tipo Pessoa?
Inserir dados do cliente aqui.
[code]private static void incluirCliente() {
int codigo = 0;
if (Comercial.listaPessoas.isEmpty()){
codigo = 1;
}else {
codigo = Comercial.listaPessoas.get(Comercial.listaPessoas.size() -1).getCodigo() +1;
}
String nome = Console.readLine("Nome do cliente: ");
String telefone = Console.readLine("Telefone do cliente: ");
String email = Console.readLine("E-mail do cliente: ");
GregorianCalendar dataCad = new GregorianCalendar();
String cpf = Console.readLine("CPF do cliente: ");
double limiteCredito = Console.readDouble("Limite de Credito do Cliente: ");
try {
Pessoa clienteNovo = new Cliente(codigo, nome, telefone, email, dataCad, cpf, limiteCredito);
Comercial.incluirPessoa(clienteNovo);
} catch (Exception e) {
// TODO: handle exception
}
}
[/code]
Processamento desses dados fica na classe Comercial.
[code]public class Comercial {
public static ArrayList<Pessoa> listaPessoas = new ArrayList<>();
public static void incluirPessoa(Pessoa obj){
// O QUE COLOCAR AQUI DENTRO???
// ESSE E O MEU PROBLEMA
}[/code]
Como consulto o CPF de um cliente dentro dessa ArrayLista tipo pessoa?
Não to conseguindo entender isso, obrigado pela atençao!