Re: VB.NET, полиморфизм класса монстра
От: Змиулан Россия  
Дата: 17.01.09 19:19
Оценка:
Напишу примерный код. Нужно чтобы в А всё работало без изменений.

А:
Private Sub makenewmonster(name as String)
    If name="1" Then
        Dim q As New Monster1
        Monsters.Add(q)
    Else
        Dim q As New Monster2
        Monsters.Add(q)
    End If
End Sub

Private Sub checkmonsters()
    For Each m As Monster In Monsters
        If m.Life=0 Then
            MsgBox("Монстр " & m.Name & " убит")
        End If
    Next
End Sub


B:
Public Class Monster

    Public Name as string
    Public Life as Byte
    Public Overridable Sub GetHurt(hp as Byte)
        Life=Life-hp
    End Sub

End Class

Public Class Monster1
Inherits Monster
    Public Overrides Sub GetHurt(hp as Byte)
        Life=Life-hp
        Life=Life+1
    End Sub
End Class

Public Class Monster2
Inherits Monster
End Class
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.