Использовать свойство базового типа если генерик тип неизвестен - C#
Формулировка задачи:
Здравствуйте, предположим, есть обычный мяч и коробка для него, потом появился специфичный мяч для работы с которым нужно расширить обычную коробку.
Я знаю , что c# не поддерживает вариативность, но как тогда решить подобную задачу и сохранить типобезапосность?
Листинг программы
- class Ball
- {
- }
- class SpecificBall : Ball
- {
- }
- class BallBox
- {
- public virtual Ball Ball { get; set; }
- public virtual void Update()
- {
- ... логика для обычного мяча
- }
- ...
- }
- class SpecificBallBox : BallBox
- {
- public override SpecificBall Ball { get; set; } /// ???
- public virtual void Update()
- {
- ... логика для специфичного мяча
- }
- ...
- }
Решение задачи: «Использовать свойство базового типа если генерик тип неизвестен»
textual
Листинг программы
- class SmartRefrigerator : ItemBox<Food>
- {
- public void FindExpiredMeals()
- {
- ...
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д