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



Перегрузка членов
8 февраля 2009

Благодаря перегрузке удается создать несколько членов с одним и тем же именем,
но с разной сигнатурой. Перегрузку чаще всего применяют с методами, С# также
позволяет перегружать операторы. На этом занятии вы научитесь создавать пере-
груженные члены классов.
Изучив материал этого занятия, вы сможете:
^ создавать перегруженные методы;
^ создавать перегруженные операторы (в С#).
Продолжительность занятия - около 15 минут.
Вашему классу может потребоваться член, способный принимать разные набо-
ры параметров, например:
Visual Basic .NET
Visual C#
public void Display(int DisplayValue)
Этот метод прекрасно подходит для решения задач, для которых он предназна-
чен. Но что, если этому методу следует передать параметр duration? Или передать в
параметре DisplayVaiue строку вместо целого числа? В Visual Basic .NET первая про-
блема решается при помощи необязательных параметров, но пользователям С# эта
возможность недоступна. Более того, необязательные параметры бесполезны во
второй ситуации, когда метод должен принимать аргументы различных типов.
В таких случаях и применяют перегрузку — создание нескольких методов с оди-
наковыми именами. Перегруженные методы способны возвращать значения оди-
наковых типов, разрешается объявлять их с одинаковыми модификаторами досту-
па, но сигнатуры перегруженных методов должны отличаться. При вызове перегру-
женного метода исполняющая среда проверяет типы переданных аргументов, срав-
нивает список аргументов с сигнатурами доступных перегруженных методов, и вы-
зывает тот, чья сигнатура совпала со списком аргументов. Если же ни один из пере-
груженных методов не принимает указанный набор аргументов, генерируется ошибка.
Чаще всего перегрузку применяют с методами, создание перегруженных мето-
дов поддерживает и Visual Basic .NET, и С#; последний дополнительно позволяет
перегружать операторы, обеспечивая поддержку нестандартной функциональности
пользовательских типов данных с операторами.


Теги: .NET

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

Создание формы
Проверка на уровне формы
Создание перегруженных методов
Объект Graphics
Промежуточный язык
Наследование от абстрактного класса
Ввод кода с помощью CodeInsight
События жизненного цикла формы
Решения .NET
Вложенные элементы управления и контейнеры
Замещение членов базового класса в Visual Basic .NET
Сокрытие членов базового класса в Visual C#
Настройка установочной программы
Защищенные члены
Применение трассировочных переключателей
| .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


     



Rambler's Top100

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

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