C# вложеные класы

194
28 мая 2018, 05:50

Существуют два класа : один дочерний, второй родительский

 class foo
 {
    protected class Quux
    {
      public Quux()
      {
      Console.WriteLine("Foo.Quux()");
      } 
    }
 }
  class bar:foo
  {
    new class Quux
    {
        public Quux()
        {
            Console.WriteLine("Bar.Quux()");
        }
    }
  }

В функции main вот такой код:

static void main() 
 {
    new bar();
 }


Не могу понять определения внутренего класа в дочернем класе. Зачем написано new и как будет ввести себя программа. Заранее спасибо за ответ.

Answer 1

Без new компилятор выдаст предупреждение, что bar.Quux перекрывает/прячет foo.Quux, а написав new, программист говорит компилятору, что это делается специально, чтобы компилятор не волновался.

READ ALSO
Заполнить DataGridView из DataTable

Заполнить DataGridView из DataTable

Нужно заполнить строки DataGridView из DataTableПри заполнении, приведённом ниже, уже имеющийся DGV склеивается с DT

254
Как использовать JSON5 в C#

Как использовать JSON5 в C#

Консольное приложение на С#

224
Внутренний оптимизатор Mysql

Внутренний оптимизатор Mysql

Слышал про существование внутреннего оптимизатора в mysql, в доках ничего такого не нашел

221
Как заполнить foreign key mysql

Как заполнить foreign key mysql

у меня есть таблица Form(по типу чека) связаная с таблицами Book,Worker,Reader, нужно заполнить foreign key(idBook,idWorker,idReader) в таблице Form, столбец kod думал сделать,как...

208