Главная » Просмотр файлов » Г. Шилдт - С#4.0 Полное руководство

Г. Шилдт - С#4.0 Полное руководство (1160795), страница 30

Файл №1160795 Г. Шилдт - С#4.0 Полное руководство (Г. Шилдт - С#4.0 Полное руководство) 30 страницаГ. Шилдт - С#4.0 Полное руководство (1160795) страница 302019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 30)

Итак, напомним еще раз: возврат из метода типа чо1<( может произойти при двух условиях: по достижении закрывающей фигурной скобки или при выполнении оператора геСигп. Возвратзначения Методы с возвратом типа чо1<) нередко применяются в программировании, тем не менее, большинство методов возвращает конкретное значение. В действительности способность возвращать значение является одним из самых полезных свойств метода. Возврат значения уже демонстрировался в главе 3 на примере метода МаСМ. Б<(гС ( ), использовавшегося для получения квадратного корня.

Возвращаемые значения используются в программировании с самыми разными целями. В одних случаях, как в примере метода Ма СМ. 5<(гС ( ), возвращаемое значение содержит результат некоторого вычисления, в других — оно может просто указывать на успешное или неудачное завершение метода, а в третьих — содержать код состояния. Но независимо от преследуемой цели использование возвращаемых значений является неотъемлемой частью программирования на С№. Для возврата значения из метода в вызывающую часть программы служит следуюп(ая форма оператора гегпгп: геСпгп значение; где значение — это конкретное возвращаемое значение. 160 Часть ). Язык С№ Используя возвращаемое значение, можно усовершенствовать рассматривавшийся ранее метод Агеарегрегяоп () .

Вместо того чтобы выводить величину площади на одного человека, лучше возвратить ее из этого метода. Среди прочих преимуществ такого подхода следует особо отметить возможность использовать возвращаемое значение для выполнения других вычислений. Приведенный ниже пример представляет собой улучшенный вариант рассматривавшейся ранее программы с усовершенствованным методом Агеарегрегяоп (), возвращающим величину площади на одного человека вместо того, чтобы выводить ее.

Возвратить значение из метода АгеаРегРегяоп() пяьпр Буясегяг с1аяя Вц11С1пд ( рцЬ11с 1пс Р1оогя; // количество этажей рпшьс 1пс Агеа) // общая площадь здания рпЫ1с ьпс Оссорапся; // количество жильцов // Возвратить величину площади на одного человека. рпЫ1с ьпс АгеаРегРегяоп() ( гегогп Агеа / Оссцрапгя; ) ) // использовать значение, возвращаемое методом АгеаРегРегяоп(). с1аяя Вц11бьпчоещо ятат1с чогб Ха1п() ( Во11бюч Ьоняе = пен Вцг1б1пс(); Вц11бьпч оттьсе = пен Вц1161пд()) ьпг агеаррг // плошадь на одного человека // Присвоить значения полям в объекте Ьоояе. Ьоцяе.оссцрапгя = 4; Ьоняе.Агеа = 2500; Ьоояе.Р1оогя = 2; Присвоить значения полям в объекте отстое. отт1се.осспрапся = 25г огг1се.ягеа = 4200; отсьсе.г1оогя = 3) // Получить площадь на одного человека в жилом доме. агеаРР = Ьоцяе.лгеарегрегяоп()г сопяо1е.игьгеььпе("Дом имеет: 1п Ьопяе.Р1оогя + " этажа1п Ьоцяе.осспрапгя ь " жильца1п Ьоняе.ьгеа + кв.

футов общей площади, из нихМ агеаРР я " приходится на одного человека"); Глава В. Введение в классы,объекты н методы 161 Сопво1е.нггсеъгпе() /! Получить площадь на одного человека в учреждении. агеарр = ог'ггсе.лгеарегрегвоп(); Сопзо1е;Хгзсеьгпе("Учреждение имеет: 1п оссгсе.у1оогв + " зтажа1п оссгсе.оссирапсв + " работников1п осггсе.лгеа + кв. футов общей площади, из них1п агеаРР + " приходится на одного человека"); Эта программа дает такой же результат, как и прежде. ° В данной программе обратите внимание на следующее: когда метод Агеарегрегзоп () вызывается, он указывается в правой части оператора присваивания.

А в левой части этого оператора указывается переменная, которой передается значение, возвращаемое методом Агеарегреге оп ( ) . Следовательно, после выполнения оператора агеаРР = Ьоиве.лгеарегРегвоп(); в переменной агеарр сохраняется величина площади на одного человека в жилом доме(объект Ьоиве). Обратите также внимание на то, что теперь метод Агеарегрегвоп () имеет возвращаемый тип 1пс. Это означает, что он будет возвращать целое значение вызывающей части программы. Тип, возвращаемый методом, имеет очень большое значение, поскольку тип данных, возвращаемых методом, должен быть совместим с возвращаемым типом, указанным в методе. Так, если метод должен возвращать данные типа боиЬ1е, то в нем следует непременно указать возвращаемый тип боиЬ1е. Несмотря на то что приведенная выше программа верна, она, тем не менее, написана не совсем эффективно.

В частности, в ней можно вполне обойтись без переменной агеарр, указав вызов метода Агеарегрегвоп () непосредственно в операторе, содержащем вызов метода Игг СеЬ1пе (), как показано ниже. Сопво1е.нг1сеъьпе("Пом имеет: 1п почве.Р1оогв ь " зтажа1п почве.оссирапгв + " жильиа1п почве.лгеа + кв. футов общей площади, из них1п Ьоиве.АгеаРегРегвоп() приходится на одного человека"); В данном случае при выполнении оператора, содержащего вызов метода иг1беыдпе (), автоматически вызывается метод пои ее. Агеаре грег вол (), а возвращаемое им значение передается методу игг сеь1пе ( ) . Кроме того, вызов метода Агеарегрегвоп () можно использовать всякий раз, когда требуется получить величину площади на одного человека для конкретного объекта типа Ви11с)1пс.

Например, в приведенном ниже операторе сравниваются величины площади на одного человека для двух зданий, гс(Ы .Агеарегрегвоп() > Ь2.АгеаРегРегвоп()) Сопво1е.нгггеъгпе("В здании Ь1 больше места для каждого человека") 162 часть 1. язык С() Использование параметров При вызове метода ему можно передать одно или несколько значений. Значение, передаваемое методу, называется аргументом. А переменная, получающая аргумент, называется формальным параметром, или просто параметром. Параметры объявляются в скобках после имени метода. Синтаксис объявления параметров такой же, как и у переменных. А областью действия параметров является тело метода. За исключением особых случаев передачи аргументов методу, параметры действуют так же, как и любые другие переменные. Ниже приведен пример программы, в котором демонстрируется применение параметра.

В классе СЬ)<Мил используется метод 1яРг1те (), который возвращает значение сгпе, если ему передается значение, являющееся простым числом. В противном случае он возвращает значение 1а1 я е. Следовательно, возвращаемым для метода 1яргыпе () является тип Ьоо1. Простой пример применения параметра.

оя1по Буяоеян сгаяя СЬЕНои ( // Возвратить значение Ггпе, если значение // параметра х окажется простым числом. роЬ11с Ьоо1 1яРгьие(ьпс х) ( 11(х <= 1) гесогп Га1яе; гог(1пс 1=2; 1 <= «/1; 1ь+) 1Е((х %1) == О) геспгп Еа1яе; гегогп ггое; ) с1аяя Рагиоеио ягагьс чо1о Ма1п () ( СЬХНои оЬ = пен СЬХХои() Гог(ьпс 1=2; 1 < 10) 1++) 11(оЪ.1яРгьзе(1)) Сопяо1е.Хгьсеъьпе(1 + " простое число.") е1яе Сопяо1е.Хгьсеъьпе(1 + " непростое число."); Вот какой результат дает выполнение этой программы.

2 простое число. 3 простое число. 4 непростое число. 5 простое число. б непростое число. 7 простое число. 8 непростое число. 9 непростое число. В данной программе метод 1ярг1ме () вызывается восемь раз, и каждый раз ему передается другое значение. Проанализируем этот процесс более подробно. Прежде Глава 6.

Введение в вассы, объекты и методы 163 всего обратите внимание на то, как вызывается метод 1яргдве () . Его аргумент указывается в скобках. Когда метод 1 я Ргдве ( ) вызывается в первый раз, ему передается значение 2. Следовательно, когда метод 1ярг1ве () начинает выполняться, его параметр х принимает значение 2. При втором вызове этого метода его параметр х принимает значение 3, при третьем вызове — значение 4 и т.д.

Таким образом, значение, передаваемое методу 1яргдве () в качестве аргумента при его вызове, представляет собой значение, которое принимает его параметр х. У метода может быть не только один, но и несколько параметров. Каждый его параметр объявляется, отделяясь от другого запятой. В качестве примера ниже приведен класс СЬ)гипв, который расширен дополнительным методом ЬеаяЬСоврассог (), возвращающим наименьший общий множитель двух его аргументов. Иными словами, этот метод возвращает наименьшее число, на которое оба его аргумента делятся нацело. /! Добавить метод, принимаювий дяа аргумента. ияьпд Зуягевг с1аяя СЬКНпв ( // Возвратить значение Сгие, если значение // параметра х окажется простым числом. рпътгс Ьоо1 1яРггве(гпс х) ( 11(х <= 1) гегигп Га1яег Гог(1пс 1=2; 1 <= хЯ г 1++) 11((х %1) == О) гегигп йа1яе; гесигп пхнет О Возвратить наименьший обший множитель.

Характеристики

Тип файла
DJVU-файл
Размер
7,66 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6392
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее