Исходники.Ру - Программирование
Исходники
Статьи
Книги и учебники
Скрипты
Новости RSS
Магазин программиста

Ishodniki.Ru » Online книги » Visual Basic по шагам

Шаг 23 - Несколько интерфейсов и версии

Еще одно использование полиморфизма версии COM объектов. Решив расширить функциональность объекта или исправить код можно создать новый класс на основе интерфейса. Соответственно новый клиент будет пользоваться новым объектом интерфейса, а старый старым. Что позволяет безболезненно выпускать все новые и новые более функциональные версии. Ни кто не запрещает собирать в класс реализации нескольких интерфейсов. Объявите два класса интерфейса:

Implements IClassNew

Implements IChet



Private Sub IChet_Method()

MsgBox "Chet1 Method"

End Sub



Private Sub IChet_Test()

MsgBox "Chet1 Test"

End Sub



Private Sub IClassNew_Test2()

MsgBox "chet1 Test2"

End Sub

И новая версия класса будет поддерживать и старый интерфейс и новый. Здесь совместимость идет на уровне интерфейсов. Есть один интерфейс, есть новый интерфейс. При таком подходе должен быть способ программно проверить, а поддерживает ли объект этот интерфейс. Он есть и реализовывается с помощью оператора TypeOf.

Dim interface As IChet

Private Sub Command1_Click()

Set interface = New ClassChet

If TypeOf interface Is IClassNew Then

    MsgBox "Support IClassNew"

End If

Set interface = Nothing

End Sub



Private Sub Command2_Click()

Set interface = New ClassChet1

If TypeOf interface Is IClassNew Then

    MsgBox "Support IClassNew"

End If

Set interface = Nothing

End Sub

К ClassChet1 добавлен интерфейс IClassNew.

Предыдущий шаг | Оглавление | Следующий шаг

Рассылка новостей
Рейтинги
© 2007, Программирование Исходники.Ру