Какое различное назначение «нового» доступно в C # - PullRequest
3 голосов
/ 16 апреля 2011

Может ли кто-нибудь подробно объяснить (с примером) различное назначение «нового» в C #.

Ответы [ 2 ]

7 голосов
/ 16 апреля 2011

У вас есть:

Используется для создания объектов и вызова Конструкторы

При использовании в качестве модификатора новый Ключевое слово явно скрывает член унаследовано от базового класса

Новое ограничение указывает, что любой введите аргумент в универсальном классе декларация должна быть публичной конструктор без параметров

2 голосов
/ 16 апреля 2011
  1. Создание объекта
  2. В анонимные типы
  3. Чтобы указать, что член базового класса скрыт.
  4. Как ограничение

О 3 ( от MSDN ):

public class BaseC
{
    public int x;
    public void Invoke() { }
}
public class DerivedC : BaseC
{
    new public void Invoke() { }
}

Keyowrd не является необходимым, но должен использоваться для его созданияясно, что конструктор базового класса скрыт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...