Я знаю, что существует немало вопросов и других веб-страниц, объясняющих разницу между затенением и переопределением. К сожалению, я до сих пор не понял, какой из них я должен использовать.Должен ли я тень или переопределение?
Моей ситуацией является следующее: Я хочу создать класс, который наследует System.ComponentModel.BindingList
определенного типа, чтобы выполнять операции, такие как добавление и удаление потокобезопасности.
Если мой базовый класс следующим образом:
Imports System.ComponentModel
Public Class DeviceUnderTestBindingList
Inherits System.ComponentModel.BindingList(Of DeviceUnderTest)
Private Sub New()
MyBase.New()
End Sub
Public Sub Add(ByVal device As DeviceUnderTest)
MyBase.Add(device)
End Sub
Public Sub Remove(ByVal deviceKey As UInteger)
MyBase.Remove(deviceKey)
End Sub
End Class
Я хотел бы кто-то использует этот класс, чтобы только быть в состоянии использовать методы .Add и .Отвернуть, которые я предоставил, а не те, из BindingList , Но я хотел бы, чтобы мой класс имел возможность получить доступ к методам BindingList внутренне, например. вы можете увидеть, что мой метод .Add в настоящее время вызывает метод BindingList.Add в какой-то момент.
Я пробовал его как с shadows
, так и с overrides
, и оба они кажутся одинаковыми, так что это правильнее, чем в этой ситуации и почему?
В этом вопросе я на самом деле означало перегрузках, где я написал переопределение - обвинить в понедельник! – Toby