Лекция 3. Язык C# является типизированным языком

6.0. Типы данных

Язык C# является типизированным языком. Каждая переменная и константа имеет тип, как и выражение, результатом вычисления которого является значение.

Тип данных определяет множество значений, которые могут принимать элементы программы. Введение типа дало возможность автоматического поиска ошибок при компиляции, что приводит к созданию надежных программ.

Тип определяет для элемента программы:

§ объем памяти для размещения. По типу компилятор определяет размер памяти для размещения значений элемента,

§ место для хранения переменной типа,

§ минимальное и максимальное значения, которые могут принимать данные,

§ разрешенные операции.

Типы могут быть:

§ стандартные (не требуют объявления),

§ пользователя (тип пользователя должен быть объявлен дополнительно ).

Типы Т1 и Т2 идентичны, если:

имеют один и тот же идентификатор типа,

– один объявлен эквивалентным другому (один из них может быть преобразован к другому). Например, целый в вещественный, символьный в строковый.

Система типов языка C# включает следующие категории:

§ Типы-значения, // в переменных типа значения хранятся данные

§ Ссылочные типы, // в переменных хранятся ссылки на фактические данные

§ Типы указателей. // в переменных хранятся адреса ячеек памяти из диапазона значений и специального значения — нулевого адреса.

Существует возможность преобразовать тип значения в ссылочный тип и обратно в тип значения с помощью упаковки-преобразования и распаковки-преобразования.

6.1. Типы значений

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

Все типы значений являются неявными производными от System.ValueType.

Типы значений состоят из двух основных категорий:

§ Структура struck. Это тип значения, который используется для объявления небольших групп связанных переменных, например координат точки.

§ Перечисление enum. Оно состоит из набора именованных констант, который называется списком.

По умолчанию первому элементу задан номер 0, а последующие – увеличиваются на 1. Например: enum Days {Sat, Sun, Mon, Tue, Wed, Thu, Fri};

Структуры делятся на следующие категории:

§ Числовые типы. Они могут быть целочисленные, вещественные – с плавающей запятой, десятичные.

§ Логический bool. Ключевое слово bool используется при объявлении переменных для хранения логических значений, true и false.

§ Пользовательские структуры.

6.2. Ссылочные типы

Переменные ссылочных типов, называемые объектами, они сохраняют ссылки на фактические данные. Для объявления ссылочных типов используют ключевые слова:

§ Класс class.

§ Интерфейс interface.

§ Делегат delegate.

§ Динамический dynamic.

§ Объект object.

§ Строка string.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: