Я пишу абстрактный класс с абстрактным методом (таким образом, все наследуемые от него классы должны реализовать этот метод). Однако я не хочу указывать параметры, которые должен использовать метод, поскольку каждый метод может принимать разные или никакие параметры. Только имя и возвращаемое значение должны быть одинаковыми.Определить абстрактный метод без указания параметров.
Есть ли способ сделать это в C#?
Спасибо за помощь!
Каждый ребенок должен создать реализацию этого метода, где он может принимать разные типы ввода, но будет выдавать тот же тип вывода. Таким образом, я могу использовать вывод для выполнения логики моей программы. – TheBoss
@ TheBoss: Точка абстрактных классов (например, интерфейсов) - это позволить использовать ... всюду общую функциональность. Вы не можете использовать его для определения чего-то типа «Вам нужна функция под названием« Foo », которая принимает * некоторые * (или нет) параметры и возвращает' int'; такая функция не может быть абстрагирована, так как ее подпись не определена. Невозможно было бы вызвать (неотразимо) код, который ссылается на класс на более высоком уровне, чем где определенная сигнатура определена, нарушая абстракцию. –
@ TheBoss: Я думаю, вам стоит изучить использование Generics для решения вашей проблемы с дизайном - например, пример кода, который опубликовал Jon. – code4life