Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpGcGi 49 of 509 menu
◀ ▶

Обобщённый интерфейс в C#

Обобщённый интерфейс - это интерфейс с параметром типа. Параметр стоит в методах: что метод принимает и что возвращает. Класс, который реализует интерфейс, подставляет вместо T конкретный тип. Сам класс при этом остаётся обычным: тип указан только у интерфейса.

Один интерфейс годится для разных типов. Хранилище пользователей возвращает строку, хранилище очков - число. По ключу 3 первое вернёт "user-3", второе - 30:

IStore<string> users = new UserStore(); IStore<int> scores = new ScoreStore(); Console.WriteLine(users.Find(3)); Console.WriteLine(scores.Find(3)); interface IStore<T> { T Find(int id); } class UserStore : IStore<string> { public string Find(int id) => $"user-{id}"; } class ScoreStore : IStore<int> { public int Find(int id) => id * 10; }

Опишите класс PriceStore через обобщённый интерфейс: по числовому ключу метод возвращает дробную цену. Для ключа 4 выведите цену 9.5.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить