Интерфейс C #, реализованный пустым абстрактным классом

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

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

public interface ISomePublicProperties {
    int PropertyOne {get;}
}

internal interface ISomeInternalProperties {
    int PropertyTwo {get;}
}

public abstract class SomeClass : ISomePublicProperties, ISomeInternalProperties {}

Но компилятор жалуется, что SomeClass не реализует интерфейсный метод ISomePublicProperties.PropertyOne и ISomeInternalProperties.PropertyTwo

Есть ли вообще в C # (я знаю, что Java позволяет это), что я могу оставить абстрактный класс пустым, реализующим интерфейсы?

11
задан kevin 31 March 2011 в 03:51
поделиться