Общие сведения о библиотеке классов .NET Framework

Обновлен: Ноябрь 2007

.NET Framework содержит классы, интерфейсы и типы значений, которые облегчают и оптимизируют процесс разработки, а также обеспечивают доступ к функциям системы. Для упрощения взаимодействия между языками большинство типов платформы .NET Framework являются CLS-совместимыми, и поэтому их можно использовать в любом языке программирования, компилятор которого соответствует спецификации CLS.

Типы .NET Framework представляют собой основу для создания элементов управления, компонентов и приложений .NET. .NET Framework содержит типы, предназначенные для следующих задач:

  • представление базовых типов данных и исключений;

  • инкапсуляция структур данных;

  • операции ввода-вывода;

  • доступ к данным о загруженных типах;

  • вызов проверок безопасности .NET Framework;

  • доступ к данным, предоставление графического пользовательского интерфейса на стороне клиента и управляемого сервером графического пользовательского интерфейса на стороне клиента.

.NET Framework предлагает расширенный набор интерфейсов, а также абстрактных и конкретных (неабстрактных) классов. Можно использовать существующие конкретные классы, кроме того, во многих случаях на их основе можно создавать собственные производные классы. Чтобы использовать возможности интерфейса, можно либо создать класс, реализующий интерфейс, либо создать производный класс на основе одного из классов .NET Framework, реализующего интерфейс.

Соглашения об именах

.В типах .NET Framework используется иерархическая схема именования с точкой. При таком подходе связанные типы группируются в пространства имен, что упрощает их поиск и создание ссылок. Первая часть полного имени — до крайней правой точки — это имя пространства имен. Последняя часть имени — это имя типа. Например System.Collections.ArrayList представляет собой тип ArrayList, который принадлежит пространству имен System.Collections. Типы в System.Collections можно использовать для работы с коллекциями объектов.

Такая схема именования упрощает разработчикам библиотек задачу расширения .NET Framework с целью создания иерархических групп типов и присвоения им согласованных между собой и понятных имен. Она также позволяет однозначно идентифицировать типы по их полным именам (то есть по пространству имен и имени типа), которые предотвращают конфликты имен типов. Ожидается, что разработчики библиотек при создании имен для пространств имен будут руководствоваться следующим правилом:

НазваниеКомпании. НазваниеПродукта

Например, пространство имен Microsoft.Word соответствует этому правилу.

Использование шаблонов именования для группировки связанных типов в пространства имен очень полезно при создании и документировании библиотек классов. Однако такая схема именования не влияет на видимость, доступ к членам, наследование, безопасность и привязки. Пространство имен может быть разделено между несколькими сборками, и одна сборка может содержать типы из нескольких пространств имен. Сборка представляет собой формальную структуру для управления версиями, развертывания, обеспечения безопасности, загрузки и обеспечения видимости в среде CLR.

Дополнительные сведения о пространствах имен и именах типов см. в разделе Система общих типов CTS.

Пространство имен System

Пространство имен System является корневым пространством имен для основных типов в .NET Framework. Это пространство имен включает классы, представляющие собой базовые типы данных, используемые всеми приложениями: Object (корень иерархии наследования), Byte, Char, Array, Int32, String и т. д. Многие из этих типов соответствуют простым типам данных, которые используются в языке программирования. При написании кода с применением типов .NET Framework можно использовать соответствующее ключевое слово языка для базового типа данных .NET Framework.

В следующей таблице перечислены базовые типы, предоставляемые в .NET Framework, кратко описывается каждый тип и указывается соответствующий тип в Visual Basic, C#, C++ и JScript.

Категория

Имя класса

Описание

Тип данных в Visual Basic

Тип данных в C#

Тип данных в C++

Тип данных в JScript

Целое число

Byte

8-разрядное целое число без знака.

Byte

byte

char

Byte

   

SByte

8-разрядное целое число со знаком.

Не является CLS-совместимым.

SByte

sbyte

signed char

SByte

   

Int16

16-разрядное целое число со знаком.

Short

short

short

short

   

Int32

32-разрядное целое число со знаком.

Integer

int

int

-или-

long

int

   

Int64

64-разрядное целое число со знаком.

Long

long

__int64

long

   

UInt16

16-разрядное целое число без знака.

Не является CLS-совместимым.

UShort

ushort

unsigned short

UInt16

   

UInt32

32-разрядное целое число без знака.

Не является CLS-совместимым.

UInteger

uint

unsigned int

-или-

unsigned long

UInt32

   

UInt64

64-разрядное целое число без знака.

Не является CLS-совместимым.

ULong

ulong

unsigned __int64

UInt64

С плавающей запятой

Single

Число с плавающей запятой с обычной точностью (32-разрядное).

Single

float

float

float

   

Double

Число с плавающей запятой с двойной точностью (64-разрядное).

Double

double

double

double

Логический

Boolean

Логическое значение (true или false).

Boolean

bool

bool

bool

Другие

Char

Символ Юникода (16-разрядный).

Char

char

wchar_t

char

   

Decimal

128-разрядное десятичное значение.

Decimal

decimal

Decimal

Decimal

   

IntPtr

Целое число со знаком, размер которого зависит от базовой платформы (32-разрядное значение при 32-разрядной платформе и 64-разрядное значение при 64-разрядной платформе).

IntPtr

Не является встроенным типом.

IntPtr

Не является встроенным типом.

IntPtr

Не является встроенным типом.

IntPtr

   

UIntPtr

Целое число без знака, размер которого зависит от базовой платформы (32-разрядное значение при 32-разрядной платформе и 64-разрядное значение при 64-разрядной платформе).

Не является CLS-совместимым.

UIntPtr

Не является встроенным типом.

UIntPtr

Не является встроенным типом.

UIntPtr

Не является встроенным типом.

UIntPtr

Объекты классов

Object

Корень иерархии объектов.

Object

object

Object*

Object

   

String

Неизменяемая строка символов Юникода фиксированной длины.

String

string

String*

String

В дополнение к базовым типам данных пространство имен System содержит более 100 классов — от классов для обработки исключений до классов, которые работают с основными механизмами среды выполнения, такими как домены приложений и сборщик мусора. Пространство имен System также содержит много пространств имен второго уровня.

Дополнительные сведения о пространствах имен см. в Справочнике по .NET Framework. В справочной документации представлен краткий обзор каждого пространства имен, а также дано формальное описание каждого типа и его членов.

См. также

Ссылки

Справочник по библиотеке классов .NET Framework

Другие ресурсы

Система общих типов CTS

Общие сведения о платформе .NET Framework