Yes, it is not supported in vb.net. The compiler requires the interface to be implemented with the explicit keyword Implements, unlike C #. The closest you can get is:
Interface ICA Property NumberA() As Integer End Interface Interface ICB Property NumberB() As Integer End Interface Class A Implements ICA Public Property NumberA() As Integer Implements ICA.NumberA '' etc End Property End Class Class B Inherits A Implements ICA, ICB Public Property NumberB() As Integer Implements ICB.NumberB '' etc... End Property End Class
Note that B no longer needs to implement NumberA, although it implements ICA, and the implementation in is accepted. But, of course, this requires too many redrafted initial definitions. The workaround you used is good and has no harmful effects at runtime. Please note that you can make A1 private.
source share