Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Параметризованные свойства
8 февраля 2009

Как правило, разработчики создают свойства, возвращающие единственное значе-
ние или объект. В Visual Basic .NET можно создавать свойства, которые принимают
параметры. Как правило, такие свойства возвращают диапазон (или массив) значе-
ний. Рассмотрим для примера объект Engine, представляющий двигатель («engine»
по-английски — двигатель). У реального двигателя может быть несколько цилинд-
ров, аналогично объект Engine включает несколько объектов Cylinder. Чтобы не пи-
сать код для доступа к каждому из этих объектов, создают свойство Cylinder, полу-
чающее или устанавливающее значение любого объекта Cylinder в зависимости от
переданного параметра.
Объявление параметризованных свойств не отличается от такового для обычно-
го свойства, единственное отличие — в объявлении параметра. Далее пишут код
методов, получающих и устанавливающих значение свойства. Вот пример парамет-
ризованного свойства, открывающего доступ к массиву объектов:
Visual Basic .NET
Создать массив для хранения значений свойства.
Private mCylinders(7) As Cylinder
Public Property Cylincfers(ByVal i As Integer) As Cylinder
Get
1 Проверить параметр, переданный при обращении к свойству.
If I > 7 Then
MessageBox.Show("Property value out of range!")
Exit Property
End If
1 Если объект не существует, создать его.
If niCylinders(i) Is Nothing Then
mCylinders{i) - New Cylinder^)
End If
Return mCylinders(i)
End Get
Set(ByVal Value As Cylinder)
' Проверить параметр, переданный при обращении к свойству.
If i > 7 Then
MessageBox.Show("Property value out of range!")
Exit Property
End If
mCylinders(i) - Value
End Set
End Property
Visual C# не поддерживает параметризованные свойства, за исключением ин-
дексаторов, о которых пойдет речь в следующем разделе.

Теги: .NET

Статьи по теме:

Делегаты
Развертывание приложений с помощью XCOPY
Получение и установка текущей культуры пользовательского интерфейса
Отладка элементов управления
Boost – версия 1.36.0
Реализация обработчиков событий
Применение XML с объектами DataSet
Создание и настройка объекта DataAdapter
Делегаты CTS
Вложенные типы
Модификаторы доступа к членам
Полиморфизм
Архитектура данных ADO.NET
Создание конфигурационного файла
ToDoList 5.6.6
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Параметризованные свойства. Регион сайта: Москва и Санкт-Петербург