domingo, 23 de janeiro de 2011

Redefinição de métodos (Overriding)


Existem classes que derivam de outras através de herança.
Em POO, nessas classes pode-se redefinir os seus métodos, ou seja pode-se alterar o método da classe principal.
Regras:
Public Overridable Sub escrever()
Devemos escrever overridable no método que queremos alterar.
Na classe derivada devemos usar a palavra Overrides
Public Overrides Sub escrever(ByVal a As String)
 
Module Module1
    'este é um exemplo de overriding ou redefinição de  métodos
    Class classe_base ' Esta é a classe principal
        Public Overridable Sub escrever()
            Console.WriteLine("Mensagem da classe principal")
        End Sub
    End Class
    Class Classderivada1 'esta é a aclasse que redefine o método escrever
        Inherits classe_base
        Public Overrides Sub escrever()
            Console.WriteLine("mensagem da classe que redefiniu o metodo")
        End Sub
       End Class
 
    Class Classderivada2 'esta é uma classe que deriva da principal
        Inherits classe_base
    End Class
    Sub Main()
        Dim a As New classe_base()
        Dim b As New Classderivada1()
        Dim c As New Classderivada2()
        a.escrever()
        b.escrever()
        c.escrever()
        Console.ReadKey()
    End Sub
End Module

0 comentários:

Postar um comentário