Хорошо, это вопрос, который я задаю не для демонстрации хороших методов кодирования (на самом деле это можно было бы считать плохой практикой), а скорее в отношении того, «может ли» это быть сделано вообще.
Тем не менее, в VB.NET вы реализуете такой интерфейс ...
Sub SomeInterfaceMember()
Implements ISomeInterface.SomeInterfaceMember
End Sub
, тогда как в C # вы делаете это явно, как это (который может быть вызван только через интерфейс) ...
void ISomeInterface.SomeInterfaceMember(){}
или, проще говоря, неявно, как это (в этом случае вы можете вызвать его напрямую или через интерфейс) ...
void SomeInterfaceMember(){} // <-- This name matches the interface member
Однако, что касается VB, вы также можете сделать это, используя любое имя для члена .. .
Sub SomeRandomMemberName() // <-- This name doesn't match the interface member
Implements ISomeInterface.SomeInterfaceMember
End Sub
Другими словами, метод, который обрабатывает реализацию, может иметь совершенно другое имя, чем имя члена интерфейса.
Мне просто интересно, есть ли что-то подобное в C #. (Да, Я знаю, что могу просто создать явный интерфейс, а затем получить к нему доступ через другой член «оболочки» с другим именем, которое просто делегирует ему полномочия, но в VB.NET вы делаете и то, и другое одним методом.)
сделать?
Mark