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

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

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

Народ, подскажите как можно реализовать Ситуация:
public class X
{
  public void x_method1()
  {
     /* Код */
  }
  
  public void x_method2()
  {
    /* код */
  }
}
 
public class Y
{
  public X X_Y = new X();
 
  public void Y_method()
  {
    X_Y.x_method1();
  }
}
 
public class Y_new : Y
{
  //Необходим, чтобы доступ к методу X_Y.x_method1, был закрыт
  public void Y_new_method()
  {
    X_Y.x_method2();
  }
}
Изначально решил так: т.к. метод Y_new, был частью другого проекта, а метод X.x_method1 был помечен как internal, поэтому доступ к нему из Y_new был закрыт. Теперь пришлось все 3 класса разнести по отдельным проектам, поэтому интернал перестал работать.

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

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

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


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

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

11   голосов , оценка 4.273 из 5
Похожие ответы