Сложное наследование (sealed internal а-ля protected internal) - C#
Формулировка задачи:
Приветствую Вас и прошу оказать содействие
Вопрос связан с наследованием. Есть 2 тяжелых случая:
1й:
Есть 2 класса A1 и A11:A1, нужно чтобы оба были не наследуемыми (sealed)
Очевидно что A11 можно объявить sealed без сожаления - это будет правильно. А вот А1 объявить как sealed не получится - от него наследуется A11.
Для этого нужна фича по аналогии с (protected internal) (protected вне текущей сборки и public внутри текущей сборки).
2й:
Есть класс C1 и есть классы C11:C1, C12:C1, C13:C1. Нужно чтобы классы C11, C12, C13 были public, а вот класс C1 имел с-ва private вне текущей сборки.
Я понимаю что все это можно обойти с помощью инкапсуляции, делегирования и прочих шаблонов и их комбинаций, но все-же, вдруг есть какое-нить решение "из коробки"?
Слушаю Ваш ответ )))
Решение задачи: «Сложное наследование (sealed internal а-ля protected internal)»
textual
Листинг программы
internal class Class1 { } public class Class2 : Class1 { }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д