Запечатать метод переменной, для дальнейшего наследования - C#

Узнай цену своей работы

Формулировка задачи:

Народ, подскажите как можно реализовать Ситуация:
Листинг программы
  1. public class X
  2. {
  3. public void x_method1()
  4. {
  5. /* Код */
  6. }
  7. public void x_method2()
  8. {
  9. /* код */
  10. }
  11. }
  12. public class Y
  13. {
  14. public X X_Y = new X();
  15. public void Y_method()
  16. {
  17. X_Y.x_method1();
  18. }
  19. }
  20. public class Y_new : Y
  21. {
  22. //Необходим, чтобы доступ к методу X_Y.x_method1, был закрыт
  23. public void Y_new_method()
  24. {
  25. X_Y.x_method2();
  26. }
  27. }
Изначально решил так: т.к. метод Y_new, был частью другого проекта, а метод X.x_method1 был помечен как internal, поэтому доступ к нему из Y_new был закрыт. Теперь пришлось все 3 класса разнести по отдельным проектам, поэтому интернал перестал работать.

Решение задачи: «Запечатать метод переменной, для дальнейшего наследования»

textual
Листинг программы
  1. public class X: X_project.X
  2. {
  3.   internal new void x_method1()
  4.   {
  5.      base.x_method1();
  6.   }
  7. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы