POO - Dúvida em construir as classes.

13/10/2006

0

Olá pessoal tudo bem com vcs?

Bom, estou me deparando na seguinte dúvida ao construir as classes.
Tudo bem que PessoaFisica e PessoaJuridica descendem da superclasse Pessoa, mas como ficaria as classes Cliente (sendo que cliente pode tanto pessoa física quanto pessoa juridica) e a classe fornecedor (seguindo o mesmo raciocínio da classe Clente).
Terei que criar essas classes que sejam filhas das classes PessoaFisica e PessoaJuridica????

Desde já agradeço a atenção

[]´s


Edibertoalves

Edibertoalves

Responder

Posts

13/10/2006

Marco Salles

é o delphi não tem Herança multiplas com em outras linguagens de programação.. Mas este efeito pode ser obtido aplicando corretamente usando o conceito de Interfaces...

Por outro lado , eu não sei como esta sua modelagem , nen quais são os criterios de abstração usados para a construção desses classes. Mas não poderia pensar na classe cliente descendendo diretamente da classse TPessoa e depois disso uma Especialização da Classe TCliente em TClientePessoaJuridica e em TClientePessoa Fisica ????


Responder

13/10/2006

Fabiano Góes

[quote:70de073f17=´Marco Salles´]é o delphi não tem Herança multiplas com em outras linguagens de programação.. Mas este efeito pode ser obtido aplicando corretamente usando o conceito de Interfaces...[/quote:70de073f17]

Fala ai Marco Salles, beleza irmão ?

aproveitando a deixa, você poderia dar um exemplo de herança multiplas com Interfaces ?

desde já agradeço !!!


Responder

14/10/2006

Marco Salles

beleza amigo...

não sei bem se o termo herança multipla com interfaces é um termo tecnicamente correto , o que eu sei pelo que ja li é que voce pode usar interfaces para suprir esta necessidade...

veja , suponha tres classes : Classe nadador , classe Corredor , classe Ciclista....Existe tambme a classe TriAtleta.. aonde um objeto instanciado do tipo Triatleta nada , corre , pedala.... Para implementar esta classe TTriatleta é conveniente usar o conceito de interface.... Aonde nos definiremos as classe Inadador , Icorredor , Iciclista... e a partir desta interfaces definiremos as classes TNadador , TCorredor , TCiclista...

Para implemntar finalmente a classe TTriatleta usaremos
Type TTriatleta = class(TInterfacedObject,INadador,ICicilista,ICorredor); metodo correr; metodo nadar; metodos pedalar; end;


esta vaga idéia foi tirada do artigo da revista delphi , da edição74. Por sinal muito bom artigo...Porem me parece que o autor do artigo esqueceu de mencionar algo muito importante : Para obter referencia referencia a implementação de uma interface atraves de QueryInterface , usando por exemplo o operador as , e necessário usar um identificado do Tipo GUID.. porem este mesmo vácuo deixado nesse artigo , fora muito bem prenchido em outro excelente artido de outro autor na edição seguinte de numero 75 da revista..

Para finalizar certa vez voce pediu exemplo de POO.... Sugiro a leitura de um livro , que se voce compar , depois vai ter que me agradecer , não pode esquecer , e se voce não gostar eu pago o livro...

http://www.relativa.com.br/livros_template.asp?Codigo_Produto=6431


Responder

16/10/2006

Joni Nunes

Muito bom seu exemplo, somente fazendo um gancho, você terá q reescrever os métodos das classes q herdou na sua classe Triatleta.


Abraço a todos.


Responder

29/05/2024

Guilherme

beleza amigo...

não sei bem se o termo herança multipla com interfaces é um termo tecnicamente correto , o que eu sei pelo que ja li é que voce pode usar interfaces para suprir esta necessidade...

veja , suponha tres classes : Classe nadador , classe Corredor , classe Ciclista....Existe tambme a classe TriAtleta.. aonde um objeto instanciado do tipo Triatleta nada , corre , pedala.... Para implementar esta classe TTriatleta é conveniente usar o conceito de interface.... Aonde nos definiremos as classe Inadador , Icorredor , Iciclista... e a partir desta interfaces definiremos as classes TNadador , TCorredor , TCiclista...

Para implemntar finalmente a classe TTriatleta usaremos
[quote:f722fb1f4e]Type
TTriatleta = class(TInterfacedObject,INadador,ICicilista,ICorredor);
metodo correr;
metodo nadar;
metodos pedalar;
end;[/quote:f722fb1f4e]

esta vaga idéia foi tirada do artigo da revista delphi , da edição74. Por sinal muito bom artigo...Porem me parece que o autor do artigo esqueceu de mencionar algo muito importante : Para obter referencia referencia a implementação de uma interface atraves de QueryInterface , usando por exemplo o operador as , e necessário usar um identificado do Tipo GUID.. porem este mesmo vácuo deixado nesse artigo , fora muito bem prenchido em outro excelente artido de outro autor na edição seguinte de numero 75 da revista..

Para finalizar certa vez voce pediu exemplo de POO.... Sugiro a leitura de um livro , que se voce compar , depois vai ter que me agradecer , não pode esquecer , e se voce não gostar eu pago o livro...

http://www.relativa.com.br/livros_template.asp?Codigo_Produto=6431




O site não está funcionando. Qual o nome do livro?
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar