Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Получение интерфейсных ссылок: ключевое слово as

Получение интерфейсных ссылок: ключевое слово as

Второй способ проверить поддержку интерфейса для данного типа предполагает использование ключевого слова as, о котором уже шла речь в главе 4. Если объект можно интерпретировать, как указанный интерфейс, будет возвращена ссылка на интерфейс. Если нет – вы получите null.

static void Main(string[] args) {
 …
 // Можно ли интерпретировать hex2, как IPointy?
 Hexagon hex2 = new Hexagon("Peter");
 IPointy itfPt2 = hex2 as IPointy;
 if (itfPt2 != null) Console.WriteLine("Вершин: {0}", itfPt2.Points);
 else Console.WriteLine("ОЙ! Вершин не видно…");
}

Обратите внимание на то, что при использовании ключевого слова as не возникает необходимости использовать логику try/catch, поскольку в том случае, когда ссылка оказывается непустой, вы гарантированно будете иметь действительную ссылку на интерфейс.

Оглавление книги


Генерация: 1.776. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз