Вызов методов с параметрами

Вызов методов с параметрами

Чтобы показать пример динамического вызова метода, имеющего параметры, предположим, что тип MiniVan определяет метод, который называется TellChildToBeQuiet().

// Усмирение вопящих…

public void TellChildToBeQuiet(string kidName, int shameIntensity) {

 for (int i = 0; i ‹ shameIntensity; i++)

  MessageBox.Show("Потише, {0}!!", kidName);

}

Метод TellChildToBeQuiet() (приказать ребенку успокоиться) имеет два параметра: строковое представление имени ребенка и целое число, отражающее степень вашего раздражения. При использовании динамического связывания параметры упаковываются в массив объектов System.Object. Для вызова этого нового метода добавьте в свой метод Main() следующий программный код.

// Динамический вызов метода с параметрами.

object[] paramArray = new object[2];

paramArray[0] = "Фред"; // Имя ребенка.

paramArray[1] = 4; // Степень досады.

mi = miniVan.GetMethod("TellChildToBeQuiet");

mi.Invoke(obj, paramArray);

Выполнив эту программу, вы сможете увидеть четыре блока сообщений, отражающих намерение пристыдить юного Фреда. Надеюсь, что к этому моменту нашего обсуждения вы уже можете видеть взаимосвязь между отображением, динамической загрузкой и динамическим связыванием. Для вас еще может оставаться неясным ответ на вопрос, когда следует использовать указанный подход в приложениях. Завершающий раздел этой главы должен пролить на это свет, но пока что следующей темой нашего рассмотрения будет исследование роли атрибутов .NET.

Исходный код. Проект LateBinding размещен в подкаталоге, соответствующем главе 12.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Перегрузка методов

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Перегрузка методов Подобно другим объектно-ориентированным языкам, язык C# позволяет типу перегружать его методы. Говоря простыми словами, когда класс имеет несколько членов с одинаковыми именами, отличающихся только числом (или типом) параметров, соответствующий член


Отображение методов

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П

Отображение методов Мы модифицируем класс Program, чтобы определить ряд статических методов, каждый из которых будет иметь один параметр System.Type и возвращать void. Начнем с метода ListMethods(), который (как вы можете догадаться сами) печатает имена всех методов, определенных


Асинхронный вызов методов

Из книги Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT автора Фролов Александр Вячеславович

Асинхронный вызов методов Чтобы дать указание делегату BinaryOp вызвать метод Add() асинхронно, измените предыдущий метод Main() так, как показано ниже.static void Main(string[] args) { Console.WriteLine("***** асинхронный вызов делегата *****"); // Вывод ID выполняемого потока. Console.WriteLine("Вызван Main() в потоке


Редактирование методов класса

Из книги OrCAD PSpice. Анализ электрических цепей автора Кеоун Дж.

Редактирование методов класса Выберите из списка элементов класса интересующий вас метод и нажмите правую кнопку мыши. На экране появится временное меню, показанное нами на рисунке 2.18. Это меню позволяет перейти к редактированию объявления или определения метода,


Малосигнальная модель с h -параметрами для биполярных транзисторов

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

Малосигнальная модель с h-параметрами для биполярных транзисторов Точной моделью для биполярных транзисторов, широко используемой при анализе на малых сигналах, является модель в h-параметрах, показанная на рис. 3.5. Эта модель с соответствующими значениями используется


Упрощенная модель с h -параметрами

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Упрощенная модель с h-параметрами Предыдущие примеры были основаны на полной модели в h-параметрах для транзистора, которая обычно используется для анализа при малом низкочастотном сигнале. Для анализа ряда транзисторных схем можно использовать также упрощенную модель


Анализ усилителя с общим эмиттером, использующий упрощенную модель с h-параметрами

Из книги Разработка ядра Linux автора Лав Роберт

Анализ усилителя с общим эмиттером, использующий упрощенную модель с h-параметрами На рис. 3.28 показана упрощенная модель для использования в PSpice, на рис. 3.29 — схема ОЭ, использующая эту модель. Входной файл для анализа приведен далее: Simplified h-Parameter AnalysisVS 1 0 1mVVO 3 0 0VF 4 0 VO 50RS 1 2


Применение собственных моделей с h -параметрами

Из книги Описание языка PascalABC.NET автора Коллектив РуБоард

Применение собственных моделей с h-параметрами Сравним теперь нахождение коэффициентов усиления по напряжению и по току двумя методами: при использовании встроенной модели PSpice и при применении нашей собственной модели в h-параметрах для усилителя ОЭ. Последний метод


Использование моделей с h -параметрами

Из книги автора

Использование моделей с h-параметрами В главе 3 h-параметры для транзистора использовались, чтобы показать, как академическая модель для биполярного транзистора (BJT) обрабатывается в PSpice. В модели были использованы два зависимых источника Е и F. Когда эта схема получена в


Создание методов

Из книги автора

Создание методов Методы представляют собой обычные процедуры типов Sub и Function, которым выпало разместиться в модуле класса. Конечно, в большинстве случаев метод должен делать нечто, напрямую связанное с самим объектом, преобразуя данные, хранимые объектом. Но, при желании,


Пример 10-2. Цикл for с двумя параметрами в каждом из элементов списка

Из книги автора

Пример 10-2. Цикл for с двумя параметрами в каждом из элементов списка #!/bin/bash# Список планет.# Имя кажой планеты ассоциировано с расстоянием от планеты до Солнца (млн. миль).for planet in "Меркурий 36" "Венера 67" "Земля 93" "Марс 142" "Юпитер 483"do set -- $planet # Разбиение переменной "planet" на


Управление конфигурационными параметрами

Из книги автора

Управление конфигурационными параметрами В предыдущих разделах рассматривалась компиляция модуля управления удочкой при условии, что установлен конфигурационный параметр CONFIG_FISHING_POLE. Конфигурационные параметры рассматривались в предыдущих главах, а теперь давайте