Общая система типов
Типы, передаваемые библиотеке
классов .NET Framework, имеют некоторую общую
природу. Эти типы определяются обшей
системой типов (Common Type System — CTS). Общая
система типов CTS определяет правила для
типов и действий, которые поддерживает
среда выполнения CLR. Именно общая система
типов CTS накладывает на классы .NET
ограничение единичного наследования
реализации. Хотя общая система типов CTS
определена для широкого множества языков
программирования, не все эти языки должны
поддерживать все свойства типов данных,
предусмотренные в общей системе типов CTS.
Например, в языке C++ множественное
наследование разрешено для неуправляемых
классов, но запрещено для управляемых.
Промежуточный язык Microsoft (Microsoft
Intermediate Language — MSIL, или просто IL) определяет
систему команд, которая используется всеми
компиляторами, транслирующими на язык
платформы .NET. Этот промежуточный язык не
зависит от используемой платформы. Код на
языке MSIL затем преобразуется во внутренний
(собственный) код платформы. Мы можем быть
уверены, что классы библиотеки .NET Framework
будут работать со всеми языками,
поддерживаемыми платформой .NET. Особенности
создаваемого приложения больше не
накладывают ограничений на выбор языка
программирования, а выбор языка
программирования больше не ограничивает
возможности создаваемого приложения.
Промежуточный язык MSIL и общая
система типов CTS позволяют многим языкам
программирования, компиляторы для которых
могут генерировать код на языке MS1L,
использовать библиотеку классов .NET Framework.
Именно в этом состоит одно из наиболее
заметных различий между платформами .NET и Java,
которые в значительной степени используют
одну и ту же философию.
Содержание раздела