Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Как выполняется метод? Параметры метода

В предыдущем разделе мы познакомились с методами вкратце, но о них можно рассказать гораздо больше. Теперь рассмотрим более подробно, как передавать методу значения и получать значения, созданные при работе метода.

Предположим, вам потребовалось, чтобы компьютер вывел на экран следующий текст:

Hello Jo

Hello Sam

Hello You

Один из возможных способов — написать отдельный метод для каждого случая:

void WriteHelloJo()

{

Console.WriteLine("Hello Jo");

}

void WriteHelloSam()

{

Console.WriteLine("Hello Sam");

}

void WriteHelloYou()

{

Console.WriteLine("Hello You");

}

Затем необходимо вызвать их следующим образом:

WriteHelloJo();

WriteHelloSam();

WriteHelloYou();

Но ведь все три метода очень похожи. А что если написать один метод WriteHello, дополнив его соответствующими параметрами, и при каждом вызове просто передавать значение параметра, отличающее один вызов от другого?

Вот как это можно сделать:

void WriteHello(string someName)

{

Console.WriteLine("Hello " + someName);

}

и затем вызвать метод следующим образом:

WriteHello("Jo");

WriteHello("Sam");

WriteHello("You");

Как видим, код позволяет сэкономить и занимаемое пространство, и затраченные усилия. Всегда старайтесь делать код как можно более кратким – чем короче программа, тем умнее программист.

Примечание редактора. Умный программист пишет не только короткий, но и понятный код. Хороший код всегда содержит комментарии умного программиста.

 

Напишем метод подобным "умным" образом:

void WriteHello(string someName)

{

Console.WriteLine("Hello " + someName);

}

Фактически мы говорим: "Каждый раз при вызове этого метода я буду подставлять строку символов с каким-либо именем. Любая подставляемая строка должна выводиться после слова "Hello".

Код в скобках (string someName) называется параметром. Параметр позволяет подставлять значение в метод при его вызове.

Когда вас обучали сложению, учитель не рассказывал о сложении всех существующих пар чисел, он просто научил методу и затем задавал разные задачи: "Сложите 2 и 5, а теперь 7 и 3". Это похоже на то, как если бы вам излагали метод сложения чисел, используя параметры: неважно, какие значения у параметров, - зная метод, всегда можно найти ответ для заданных значений.

Компьютеру все равно, какое имя вы присвоите параметру, важно, чтобы оно было единым при использовании во всем методе. Например, следующий код будет выполнен правильно:

void WriteHello(string x)

{

Console.WriteLine("Hello " + x);

}

А этот с ошибкой:

void WriteHello(string someName)

{

Console.WriteLine("Hello " + someBodiesName);

}

Вы заметили: параметры someName и someBodiesName отличаются — наш "электронный друг" не разберется в этой путанице и "разгневается".

Кроме того, в методе можно использовать не один параметр, а несколько, но нужно обязательно разделить их запятыми:

void WriteHello(string firstName, string lastName)

{

Console.WriteLine("Hello " + firstName + " " + lastName);

}

А при вызове метода необходимо подставить правильное количество значений:

WriteHello("Petr", "Ivanov");

В данном случае на экран будет выведен текст "Hello Petr Ivanov".

<== предыдущая лекция | следующая лекция ==>
Внутренние противоречия и угрозы демократических политических систем | Ошибки в задании типов параметров
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 291; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.