Как вы заставляете подписи конструктора и статические методы?
Есть ли способ заставить (дочерний) класс иметь конструкторы с конкретными сигнатурами или определенными статическими методами в C # или Java?
Вы не можете использовать интерфейсы для этого, и я знаю, что он будет иметь ограниченное использование. Один случай, в котором я нахожу это полезным, - это когда вы хотите применить некоторые рекомендации по проектированию, например:
Исключения
Все они должны иметь четыре канонических конструктора, но не существует способа обеспечить их соблюдение. Вы должны положиться на такой инструмент, как FxCop (C # case), чтобы поймать их.
операторы
Нет контракта, в котором указано, что два класса могут быть суммированы (с оператором + в C #)
Есть ли шаблон проектирования, чтобы обойти это ограничение? Какая конструкция может быть добавлена кязык преодолеть это ограничение в будущих версиях C # или Java?