我已經搜索了關於VB6對多態性支持的文章,但是我所閱讀的所有文章僅僅提到可以使派生類繼承屬性和派生類中的方法。我讀過的三篇或四篇文章中沒有提到VB6的多態性是否允許您將派生類作爲基類類型的參數傳遞。您是否可以使用基類來將多個派生類作爲參數傳遞給VB6中的函數?
如果您有一個名爲Bunny
的類,它是從名爲Animal
的類派生的,您是否可以將類型爲Bunny
的變量傳遞給以下函數?
Public Sub Chase(thePerson as Person, theAnimal as Animal)
Do While thePerson.position <> theAnimal.position
...
Loop
End Sub
PS:睡覺時間,所以如果你沒有得到upvotes和另一個24小時的最佳答案選擇,請不要生氣。 – TimFoolery 2012-07-16 06:57:57
VB6不支持通常意義上的派生類。它不支持實現繼承。它通過['Implements'語句](http://語言)支持接口繼承,因此支持[polymporphism](http://msdn.microsoft.com/zh-cn/library/aa242069(v = vs.60).aspx) msdn.microsoft.com/en-us/library/aa243384(v=vs.60).aspx)。這是你問的嗎?你如何創建你的派生類? – MarkJ 2012-07-16 16:00:03
@MarkJ是的。從它的聲音來看,它基本上與C++繼承/多態相同,除了(1)語法和(2)我猜它就像Java,只能從一個類繼承,但可以實現多個;如我錯了請糾正我。我知道Java有一個類似的「擴展」/「實現」方法。 – TimFoolery 2012-07-16 20:03:04