![]() |
António Roberto Software |
|
Linguagens
de Programação 1
|
2º
ano da Licenciatura em Informática de Gestão
|
Aula de 13 de Março de 2003
HERANÇA (continuação)
No cliente, o método Equals vai servir para detectar se a nova aposta é igual a alguma das apostas já existentes na ListBox lstApostas

A analisar: verifique com atenção o código do método btnCriarAposta_Click que processa a resposta ao Click no botão CriarAposta:
o método Equals não é invocado explicitamente em nenhuma parte do código
para verificarmos se a nova aposta já existe na ListBox lstApostas é utilizada a seguinte expressão:
lstApostas.Items.Contains(ap)
a propriedade Items representa a colecção de objectos que estão na listbox
utilizamos o método Contains para verificarmos se a nova aposta é igual a alguma das apostas contidas na ListBox lstApostas
o método Contains utiliza internamente o método Equals dos objectos que está a comparar
é aplicado o terceiro princípio da orientação aos objectos, o Polimorfismo, que será apresentado brevemente
Experimente:
não redefinir o método Equals na classe Aposta.
não redefinir o método Equals e definir o seguinte método na classe Aposta:
- public bool Equals( Aposta ap )
- observe o resultado de ambas as experiências
ao contrário do exemplo da aula anterior, o método Contains está directamente disponível na propriedade Items, pelo que não foi necessário recorrer ao cast para a interface IList
Nome do Projecto
Tipo
Código Fonte
WinTotoloto13Marco
Windows Application