logo
sranaya_informatika

Наследование

    Так, хорошо, теперь у нас есть готовый класс. Что же еще интересного нам позволяет сделать концепция ООП? Например, мы можем создать новый класс основываясь на этом, как бы унаследовав все его свойства и методы. Таким образом, чтобы написать новый класс нам не придется заново писать код всех методов и свойств, достаточно только внести некоторые изменения в существующий. Но, прежде чем наследовать новые классы, нужно сделать несколько изменений в существующем классе и определить, какие методы могут быть изменены (переопределены, опять!) в производном классе (derived). Пожалуй, хватит мучить наш "Черный ящик", пусть он немного отдохнет, а мы создадим новые классы, один назовем родителем (Parent), а другим дочерним (Child).     Для наследования используется ключевое слово Inherits, а для того, чтобы пометить методы как переопределяемые, используется ключевое слово Overridable.

Public Class Parent

Public Function Method() As String

Return "Parent -> Method"

End Function

Public Overridable Function OverridableMethod() As String

Return "Parent -> OverridableMethod"

End Function

End Class

Public Class Child

Inherits Parent

Public Overrides Function OverridableMethod() As String

Return "Child -> OverridableMethod"

End Function

End Class

    Кстати, в Visual Studio, послетого как вы создадите наследованный класс, вам не придется заново набирать определение переопределяемых методов в производном классе - достаточно выбрать метод из выпадающего списка Overrides методов (в окне редактирования кода).     Посмотрим как работают созданные нами классы, заодно убедившись в правоте всех вышесказанных слов.

Dim myParent As Parent = New Parent()

Dim myChild As Parent = New Child()

MessageBox.Show(myParent.Method()) ' отобразит Parent - > Method

MessageBox.Show(myChild.Method()) ' отобразит Parent - > Method

MessageBox.Show(myParent.OverridableMethod()) ' отобразит Parent - > OverridableMethod

MessageBox.Show(myChild.OverridableMethod()) ' отобразит Child - > OverridableMethod

47Графический интерфейс. Системы объектно-ориентированного программирования позволяет визуализировать процесс создания графического интерфейса разрабатываемого проекта, т.е. позволяют создавать объекты и устанавливать   значения свойств с помощью диалоговых окон системы программирования.

Графический интерфейс необходим для реализации интерактивного диалога пользователя с запущенным проектом. Основой для создания графического интерфейса разрабатываемого проекта является форма, которая представляет собой окно, на котором размещаются элементы управления. Необходимо отметить, что графический интерфейс проекта может включать в себя несколько форм.

 

!

Форма – это объект, представляющий собой окно на экране, в котором размещаются элементы управления.

 

Визуальное конструирование графического интерфейса проекта состоит в том, что на форму с помощью мыши помещаются и «рисуются» те или иные элементы управления.

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

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

 

!

Элементы управления – это объекты, являющиеся элементами графического интерфейса проекта, и реагирующие на события, производимые пользователем или другими программными объектами.

 

Форма и элементы управления обладают определенными наборами свойств, методов и событий.

Событийные процедуры. Для каждого события можно запрограммировать отклик, т.е. реакцию объекта на произошедшее событие. Если пользователь производит какое-либо воздействие на элемент графического интерфейса (например, щелчок), в качестве отклика выполняется некоторая последовательность действий (событийная процедура).

Каждая событийная процедура представляет собой отдельный программный модуль, который реализует определенный алгоритм. Создание программного кода событийной процедуры производится с использованием алгоритмических структур различных типов (линейнаяветвление,выбор и цикл).

Имя процедуры включает в себя имя объекта и имя события.

Объект_Событие()

 

!

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

48 Алфавит языка Visual Basic

Алфавит - это полный набор букв, цифр и символов, принятых в языке для обозначения данных и действий над ними.

Алфавит языка Visual Basic включает следующий набор символов:

- прописные (A - Z) и строчные (а - z) буквы латинского алфавита;

- цифры от 0 до 9;

- знаки арифметических операций (в порядке возрастания приоритета): +, -, *, /, |, ^;

- знаки операций отношения: =, <, >.

- знаки препинания и разделители: ,  . : ; ( );

В алфавит языка входят также зарезервированные слова, которые не могут быть использованы в качестве имен переменных или процедур. Примеры зарезервированных слов: Dim, Sub, Integer и т.д. По умолчанию для выделения ключевых слов в окне редактирования кода Visual Basic используют шрифт синего цвета.

Данные

Данные - это возможные структуры языка, над которыми выполняются разрешенные действия (операции): константы, переменные и массивы. По способности к изменению все данные делятся на переменные и константы.

Переменная - это величина, которая может меняться при выполнении программы.

Константа - величина, не меняющаяся в процессе работы. Примером константы может быть число .

49 Типы переменных.

В Visual Basic различают переменные следующих типов.

Тип

Хранимая информация

Объем занимаемой памяти (байт)

Диапазон значений

Integer

Целые числа

2

От –32768 до 32767

Long

Целые числа

4

Приблизительно

Single

Десятичные числа

4

+/- 2.1Е9

Double

Десятичные числа

(двойной точности с плавающей точкой)

8

От – 3.402823Е38 до

- 1.401298Е-45 для отрицательных значений и от 1.401298Е-45 до 3.402823Е38 – для положительных

Currency

Числа, имеющие до 15 цифр перед десятичной точкой и до 4 цифр после нее

8

От –1.79769313486232Е308 до – 4.9406564584124Е-324 для отрицательных и от 4.9406564584124Е-324 до 1.79769313486232Е308 для положительных

String

Текстовая информация

1 на каждый символ

До 65 тыс. символов для строк фиксированной длины и до 2 млрд. символов для динамических строк

Byte

Целые числа

1

От 0 до 255

Boolean

Булевы значения

2

True(истина) или False(ложь)

Date

Информация о дате и времени

8

От 1-го января 100 года до 31-го декабря 9999 года

Object

Ссылки на рисунок или любой другой объект

4

Не определен

Variant

Значения любого из вышеперечисленных типов данных

16+1 на каждый символ

Не определен

В отличие от других языков программирования Visual Basic не требует объявлять переменные перед их использованием. В случае, если переменная не объявлена, Visual Basic использует тип данных, заданный по умолчанию Variant (произвольный).

Однако правилом хорошего тона считается все-таки объявление переменной в начале процедуры.

– Dim VarName [As VarType] [,VarName 2[As VarType 2]]

– Private VarName [As VarType] [,VarName 2[As VarType 2]…]

– Static VarName [As VarType] [,VarName 2[As VarType 2]…]

– Public VarName [As VarType] [,VarName 2[As VarType 2]…],

где VarName – имя переменной,

VarType – тип переменной.

Определение: Переменные, доступные в любой процедуре, форме или модуле программы, называются глобальными.

Для создания глобальной переменой необходимо поместить оператор объявления переменной Public в раздел объявлений модуля.

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

Константы

Visual Basic предлагает целый ряд констант. Существуют константы для определения цветовых наборов, типов доступа к данным, кодов клавиш и пр. Все константы в VB имеют префикс VB, например vbActiveTitleBar.

Чтобы узнать конкретное значение какой-либо из констант необходимо вызвать Object Browser при помощи кнопки на панели инструментов.

Кроме стандартных констант Visual Basic предоставляет возможность пользователю самому создать свои собственные константы:

Const name [As Type] = Value