Gostaria de saber em um sistema ERP em quais casos poderia utilizar o polimorfismo?
Por exemplo, para fazer a parte da inclusão de todos cadastros do sistema poderia lançar mão do polimorfismo?
Não sei se me fiz entender… gostaria de mais exemplos onde o polimorfismo poderia ajudar num sistema real.
Obrigado.
Um exemplo bastante comum do uso de poliformismo é utilizá-lo para tratar objetos de diferentes tipos de uma só maneira, levando em conta algumas características comuns.
Todas as características comuns devem ser atribuidas à classe base, enquanto catacterísticas/ comportamentos específicos devem ser implementados em classes que herdam da classe comum definida.
Existem várias aplicações, qualquer coisa OO usa o poliformismo (jogos, SW de controle de dados, SW de telecom, etc.)
Vou colocar um exemplo:
Suponha que voce queira tratar evento em um método como o descrito abaixo:
public void eventHandler(IEvent event )
{
event.test();//[MARCADOR 1]
}
Voce pode ver que o o metodo sempre chama o metodo .test() de “event”.
O poliformismo permite você implementar diferentes comportamentos, dependendo do tipo do evento que voce passa como parametro.
Se voce tiver, por exemplo:
class EventClassType1 implements IEvent
{
public void test()
{
System.out.println(“Comportamento 1”);
}
}
quando fizer:
EventClassType1 testObj = new EventClassType1;
eventHandler(testObj );
o método definido em //[MARCADOR 1] imprimirá “Comportamento 1”
Caso passe um objeto de outro tipo, por exemlo:
class EventClassType2 implements IEvent
{
public void test()
{
System.out.println(“Comportamento 2”);
}
}
A MESMA chamada fo metodo imprimira:
EventClassType2 testObj = new EventClassType2;
eventHandler(testObj );
o método definido em //[MARCADOR 1] imprimirá “Comportamento 2”
Espero ter ajudado!
Falow
[quote=ggero]Gostaria de saber em um sistema ERP em quais casos poderia utilizar o polimorfismo?
Por exemplo, para fazer a parte da inclusão de todos cadastros do sistema poderia lançar mão do polimorfismo?
Não sei se me fiz entender… gostaria de mais exemplos onde o polimorfismo poderia ajudar num sistema real.
Obrigado.[/quote]
Bom, pensando em um ERP, imagine um sistema que é utilizado por diversas empresas. Temos uma Classe que define diversos métodos super importantes para o sistema, esses métodos são utilizados por todas as empresas. Imagine se em algum determinado dia, somente uma empresa queira modificar um dos métodos da classe. Será que compensa ir lá e mexer em uma classe já finalizada? Crie subclasse para essa classe, e use polimorfismo para sobrepor este método…
Espero ter ajudado,