public class Main {
public static void main(String[] args) {
ISomeInterface.A.protectedMethod(); //okay!
//ISomeInterface.A.privateMethod(); // Compilation error
}
}
Я пытаюсь использовать защищенный метод по умолчанию в интерфейсе C#, но я не могу назвать его из моего класса реализации. Например:
interface IInterface
{
protected void Protected() { }
}
Я попытался сделать следующий подход, используя C ++ Sfinae и Std :: Declval, чтобы найти, существует ли правильный метод в базовом классе, который можно вызвать из производного класса. Полученный класс получает базовый класс из параметра шаблона....