Запечатать метод переменной, для дальнейшего наследования - 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();
  }
}

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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