我有一个使用抽象类和接口的想法,但我不确定它是否可以做我想到的以及如何做。
我有一个为设备建模的抽象类,只包含抽象功能。实现时,此类基本上用作特定设备的驱动程序。
每个设备可能具有不同的功能,我试图将功能集建模为不同的接口,这些接口可能会或可能不会由类设计者实现。
我是否有机制确定设备类的子类是否正在实现这些接口。我必须从超类中确定它,然后能够从那里调用子类中定义的函数。
这对我来说听起来不可能,但我只是好奇,如果其他人有更多的直觉,或者可能是更好的解决方案。
在下面的例子中,我已经说明了我的观点。我希望能够有一个类型为device的对象,并通过某种机制调用子类中实现的函数。
谢谢!
Public MustInherit Class Device
Public MustOverride Sub One()
Public Function SupportsBonding As Boolean
'Returns true if subclass implments interface
End Function
End Class
Public Interface Bonding
Sub Two()
Sub Three()
End Interface
Public Class Device1
Inherits Device
Implements Bonding
Public Sub Two()
End Sub
Public Sub Three()
End Sub
End Class