реализуйте интерфейс с закрытым методом в vb.net

Вы должны правильно выйти из своего регулярного выражения и использовать \1.\2 вместо

s/\([0-9]\{5\}\)\(.*\)/\1.\2/

Например:

$ echo '12345jpg' | sed 's/\([0-9]\{5\}\)\(.*\)/\1.\2/'
12345.jpg
11
задан bdukes 12 January 2009 в 17:54
поделиться

2 ответа

Наличие реализации закрытого интерфейса в основном просто позволяет Вам реализовывать интерфейс, не имея необходимость пачкать API Вашего класса. Можно реализовать IFoo, но только API, которые рассматривают Вас как IFoo потребность знать это.

MSDN заявляет

Можно использовать члена парламента, не занимающего официального поста для реализации интерфейсного участника. Когда член парламента, не занимающий официального поста реализует члена интерфейса, тот участник становится доступным посредством интерфейса даже при том, что это не доступно непосредственно на переменных объекта для класса.

11
ответ дан 3 December 2019 в 06:23
поделиться

Я был отчасти потрясен этим. Кто-то мог объяснить, почему это работает? Хороший пример того, когда использовать его, также был бы хорош.

Это понятие в значительной степени походит на явную интерфейсную реализацию C#. Там также можно только получить доступ к участнику интерфейса при кастинге типа явно к тому интерфейсу.

Я не могу прокомментировать, почему команда платформы.NET чувствовала, что эта функция была действительно необходима все же. Это могло бы иногда усиливать инкапсуляцию, но я не уверен в этом. В любом случае что-то чрезвычайно подобное всегда было бы возможным составом использования вместо (интерфейсного) наследования.

6
ответ дан 3 December 2019 в 06:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: