Вызов методов с параметрами
Вызов методов с параметрами
Чтобы показать пример динамического вызова метода, имеющего параметры, предположим, что тип 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.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Управление конфигурационными параметрами
Управление конфигурационными параметрами В предыдущих разделах рассматривалась компиляция модуля управления удочкой при условии, что установлен конфигурационный параметр CONFIG_FISHING_POLE. Конфигурационные параметры рассматривались в предыдущих главах, а теперь давайте
Малосигнальная модель с h -параметрами для биполярных транзисторов
Малосигнальная модель с h-параметрами для биполярных транзисторов Точной моделью для биполярных транзисторов, широко используемой при анализе на малых сигналах, является модель в h-параметрах, показанная на рис. 3.5. Эта модель с соответствующими значениями используется
Упрощенная модель с h -параметрами
Упрощенная модель с h-параметрами Предыдущие примеры были основаны на полной модели в h-параметрах для транзистора, которая обычно используется для анализа при малом низкочастотном сигнале. Для анализа ряда транзисторных схем можно использовать также упрощенную модель
Анализ усилителя с общим эмиттером, использующий упрощенную модель с h-параметрами
Анализ усилителя с общим эмиттером, использующий упрощенную модель с h-параметрами На рис. 3.28 показана упрощенная модель для использования в PSpice, на рис. 3.29 — схема ОЭ, использующая эту модель. Входной файл для анализа приведен далее: Simplified h-Parameter AnalysisVS 1 0 1mVVO 3 0 0VF 4 0 VO 50RS 1 2
Применение собственных моделей с h -параметрами
Применение собственных моделей с h-параметрами Сравним теперь нахождение коэффициентов усиления по напряжению и по току двумя методами: при использовании встроенной модели PSpice и при применении нашей собственной модели в h-параметрах для усилителя ОЭ. Последний метод
Использование моделей с h -параметрами
Использование моделей с h-параметрами В главе 3 h-параметры для транзистора использовались, чтобы показать, как академическая модель для биполярного транзистора (BJT) обрабатывается в PSpice. В модели были использованы два зависимых источника Е и F. Когда эта схема получена в
Создание методов
Создание методов Методы представляют собой обычные процедуры типов Sub и Function, которым выпало разместиться в модуле класса. Конечно, в большинстве случаев метод должен делать нечто, напрямую связанное с самим объектом, преобразуя данные, хранимые объектом. Но, при желании,
Перегрузка методов
Перегрузка методов Подобно другим объектно-ориентированным языкам, язык C# позволяет типу перегружать его методы. Говоря простыми словами, когда класс имеет несколько членов с одинаковыми именами, отличающихся только числом (или типом) параметров, соответствующий член
Отображение методов
Отображение методов Мы модифицируем класс Program, чтобы определить ряд статических методов, каждый из которых будет иметь один параметр System.Type и возвращать void. Начнем с метода ListMethods(), который (как вы можете догадаться сами) печатает имена всех методов, определенных
Асинхронный вызов методов
Асинхронный вызов методов Чтобы дать указание делегату BinaryOp вызвать метод Add() асинхронно, измените предыдущий метод Main() так, как показано ниже.static void Main(string[] args) { Console.WriteLine("***** асинхронный вызов делегата *****"); // Вывод ID выполняемого потока. Console.WriteLine("Вызван Main() в потоке
Пример 10-2. Цикл for с двумя параметрами в каждом из элементов списка
Пример 10-2. Цикл for с двумя параметрами в каждом из элементов списка #!/bin/bash# Список планет.# Имя кажой планеты ассоциировано с расстоянием от планеты до Солнца (млн. миль).for planet in "Меркурий 36" "Венера 67" "Земля 93" "Марс 142" "Юпитер 483"do set -- $planet # Разбиение переменной "planet" на
Редактирование методов класса
Редактирование методов класса Выберите из списка элементов класса интересующий вас метод и нажмите правую кнопку мыши. На экране появится временное меню, показанное нами на рисунке 2.18. Это меню позволяет перейти к редактированию объявления или определения метода,