Exemplo Polimorfismo

3 respostas
G

O Exemplo abaixo é considerado Polimorfismo? de que tipo?

class pessoa {
	
	private String nome;
	
	public void incluir(String nome) {
		this.nome = nome;
	}
	
	public String retorna_nome() {
		return(nome);
	}	
}


class pessoa_fisica extends pessoa {
	
	private String cpf;
	
	public void incluir(String cpf) {
		this.cpf = cpf;
	}
	
	public String retorna_cpf() {
		return(cpf);
	}		
}


class pessoa_juridica extends pessoa {
	
	private String cnpj;
	
	public void incluir(String cnpj) {
		this.cnpj = cnpj;
	}
	
	public String retorna_cnpj() {
		return(cnpj);
	}
}


class cliente_juridica extends pessoa {
	
	private String cnpj;
	
	public void incluir(String nome, String cnpj) {
		super.incluir(nome);
		this.cnpj = cnpj;
	}
	
	public String retorna_cnpj() {
		return (cnpj);
	}
}


import javax.swing.JOptionPane;
class usa {
	
	public static void main(String args[]) {
		
    	cliente_juridica obj_usa = new cliente_juridica();
    	obj_usa.incluir("Gerson","1122233344455");
    	
    	System.out.println("Cliente...: "+obj_usa.retorna_nome());
    	System.out.println("Cliente...: "+obj_usa.retorna_cnpj());    	
   	
	}
	
}

3 Respostas

romarcio

Teria que ser algo assim:

public static void main(String args[]) {  
           
         pessoa  obj_usa = new cliente_juridica();  
         obj_usa.incluir("Gerson","1122233344455");  
           
         System.out.println("Cliente...: "+obj_usa.retorna_nome());  
         System.out.println("Cliente...: "+obj_usa.retorna_cnpj());        
       
     }

Neste caso Pessoa é a super classe. ClientePessoa herda os métodos da SuperClasse e se torna uma subClasse.

No polimorfismo, vc cria um Atributo do tipo Pessoa que recebe um objeto do tipo Cliente_Juridica.

Como cliente_juridica É-UMA pessoa, vc pode fazer isso: pessoa obj_usa = new cliente_juridica(); Porém o contrário não, pq Pessoa não é-um Cliente_Juridica e sim o contrário.

G

Entendi… e esse seria um Polimorfismo de inclusão ? Obrigado.

marcelo.bellissimo

Sim… assim como um:

List lista = new ArrayList();

Sempre que você usa uma classe mãe como ponteiro pra uma instância de uma classe filha, é um polimorfismo de inclusão…

Criado 18 de agosto de 2010
Ultima resposta 19 de ago. de 2010
Respostas 3
Participantes 3