⇒ Библиотека книг по компьютерным технологиям
⇒ ⇒ Разработка Windows-приложений на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD
⇒ ⇒ ⇒ Глава 1. Введение в .NET Framework
⇒ ⇒ ⇒ ⇒ Занятие 2. Библиотека базовых классов .NET
⇒ ⇒ ⇒ ⇒ ⇒ Применение типов .NET Framework в приложениях
Читать далее: Применение переменных ссылочных типов и типов значений
Экземпляры ссылочных типов создаются в два этапа. Вначале объявляется переменная требуемого типа. При этом выделяется память, необходимая для хранения данной переменной, но сам объект пока не создается. Синтаксис объявления объектов таков:
Visual Basic .NET
Dim myForm As System.Windows.Forms.Form
Visual C#
System.Windows.Forms.Form myForm;
Предыдущая строка приказывает исполняющей среде выделить необходимый объем памяти под переменную, которая в данном примере представляет форму, присваивает этой переменной имя myForm
, но пока не создает в памяти реальный объект формы. Собственно объект создается в ходе второго этапа, называемого созданием экземпляра (instantiation), например:
Visual Basic .NET
myForm = New System.Windows.Forms.Form
Visual C#
myForm = new System.Windows.Forms.Form();
Ключевое слово New
(new
), использованное в этом примере, вызывает конструктор типа System.Windows.Forms
. Конструктор — это специальный метод, вызываемый только в начале жизни объекта и содержащий код, который необходимо исполнить, чтобы получить работоспособный объект. Этот код способен, например, назначать свойствам объекта начальные значения. Любые параметры, необходимые конструктору, указываются в скобках в конце строки. Следующий пример иллюстрирует объявление и создание экземпляра класса Widget
, конструктор которого требует передать ему в качестве параметра строку. Подробнее о конструкторах рассказывается на занятии 4.
Visual Basic .NET
Dim myWidget As Widget myWidget = New Widget("This is required by the constructor")
Visual C#
Widget myWidget; myWidget = new Widget("This is required by the constructor");
Можно объявить объект и создать его экземпляр в одной и той же строке. При этом выделяется память под объект, и в зарезервированной памяти тотчас создается экземпляр объекта. В предыдущих версиях Visual Basic совмещать объявление и создание экземпляров не рекомендуется, так как подобная экономия существенно снижает производительность. Однако Visual Basic .NET и Visual C# оптимизированы для подобных операций и выполняют их без потери производительности. Вот пример кода, иллюстрирующий объявление новой формы с одновременным созданием ее экземпляра:
Visual Basic .NET
Dim myForm As New System.Windows.Forms.Form
Visual C#
System.Windows.Forms.Form myForm = new System.Windows.Forms.Form();
Любые переменные — как ссылочных типов, так и переменные с типами значения — необходимо инициализировать перед использованием. Поля классов и структуры в Visual Basic .NET инициализируются значениями по умолчанию при объявлении. Переменные числовых типов (например типы значений, представляющие целые числа или числа с плавающей точкой) инициализируются нулями, переменные типа Boolean
— значением False
, а переменные ссылочных типов — пустой ссылкой (null
-значением).
В C# переменные по умолчанию инициализируются значением null
, однако любая попытка использования неинициализированной переменной с классами и методами закончится ошибкой.
Все книги представлены на сайте исключительно для ознакомления с содержанием. |