Функция return в java

Функция return в java

Я смотрю на учебник по поиску путей и я заметил return заявление внутри void способ (класс PathTest , строка 126):

Я новичок в Java. Кто-нибудь может сказать мне, почему он там? Насколько я знал, return внутри метода void не допускается.

7 ответов

он просто выходит из метода в этот момент. После return выполняется, остальная часть кода не будет выполнена.

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

вы можете return в методе void вы просто не можете вернуть любое значение (например, return 5; ), вот почему они называют это пустота метод. Некоторые люди всегда явно заканчивают методы void с помощью оператора return, но это не обязательно. Это can используйте, чтобы оставить функцию рано, хотя:

ключевое слово просто выскакивает кадр из стека вызовов, возвращая элемент управления в строку после вызова функции.

язык Java спецификация говорит, что вы можете иметь return без выражения, если ваш метод возвращает void.

Он функционирует так же, как возврат для функции с указанным параметром, за исключением того, что он ничего не возвращает, так как нечего возвращать, и управление передается обратно вызывающему методу.

Он выходит из функции и возвращает ничего.

что-то вроде return 1; было бы неверно, так как он возвращает целое число 1.

посмотреть этот пример, вы хотите добавить в список условно. Без слова "return" все ifs будут выполнены и добавлены в ArrayList!

Вот вроде понимаю что return что-то возвращает, завершает процессы метода(функции), но что, как он это делает вообще не понимаю. Пересмотрел кучу статей, видио по этому поводу, всё равно не понимаю.

Читайте также:  Карта россии со спутника в хорошем качестве

"Если не сложно приведите пример чтобы понял, зарание спасибо".

2 ответа 2

Каждый метод — это кусок последовательно выполняющегося кода.

Каждый метод в своей сигнатуре (определении) имеет указание на тип возвращаемого значения.

Каждый метод всегда заканчивается вызовом return . В случае если метод возвращаемым значением имеет void (не путать с Void ) то ключевое слово return можно (и нужно) опустить. Пример:

Также return в этих методах можно использовать для логических целей. Например не выполнять код методе, если какие-то условия не выполнились

Если возвращаемое значение метода не void то метод обязан вызвать return и вернуть значение указанного типа. Его можно использовать для назначения к-л переменно или иначе использовать Пример:

В последнем случае результат работы метода будет присвоен переменной i

Не могу говорить совершенно точно про java, но думаю, что там все работает также, как и в CС++.

Если я правильно понял вопрос — отвечаю:

При вызове функции происходит смена контекста выполняемой программы — все значимые регистры и локальные переменные, а также регистр связи сохраняются в стек, а в регистры, предназначенные под передачу параметров (а если их много — для этого тоже используется стек) записываются передаваемые параметры.

Когда выполняется строка return result — в регистры, предназначенные для возврата результата выполнения функции, помещается её результат.

В случае, если результат не помещается в эти регистры — он помещается в стек, а в регистр заносится адрес возвращаемого значения в стеке.

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

А более подробно на эту тему советую почитать "Соглашение о вызовах" целевой платформы.

Если переменные и константы хранят некоторые значения, то методы содержат собой набор операторов, которые выполняют определенные действия.

Читайте также:  Какой браузер занимает меньше оперативной памяти

Общее определение методов выглядит следующим образом:

Модификаторы и параметры необязательны.

По умолчанию главный класс любой программы на Java содержит метод main, который служит точкой входа в программу:

Ключевые слова public и static являются модификаторами. Далее идет тип возвращаемого значения. Ключевое слово void указывает на то, что метод ничего не возвращает.

Затем идут название метода — main и в скобках параметры метода — String[] args . И в фигурные скобки заключено тело метода — все действия, которые он выполняет.

Создадим еще пару процедур:

Условно методы, которые не возвращают никакого значения, называются процедурами .

Кроме void методы в Java могут возвращать конкретное значение. Такие методы, также условно называют функциями . Например:

В функции в качестве типа возвращаемого значения вместо void используется любой другой тип. В данном случае тип int и тип String . Функции также отличаются тем, что мы обязательно должны использовать оператор return , после которого ставится возвращаемое значение.

При этом возвращаемое значение всегда должно иметь тот же тип, что значится в определении функции. И если функция возвращает значение типа int , то после оператора return стоит целочисленное значение (как в данном случае число 1), которое неявно является объектом типа int .

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

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

Ссылка на основную публикацию
Файлы mdi чем открыть
Если вы не смогли открыть файл двойным нажатием на него, то вам следует скачать и установить одну из программ представленных...
Украли сумку с документами что делать
В связи с угрозой распространения на территории Российской Федерации коронавирусной инфекции приостановлен личный прием граждан в судах. Смотреть как изолируются...
Ультра исо вам необходимо иметь права администратора
Очень многие пользователи, когда им нужно сделать загрузочную флешку Windows или с дистрибутивом другой операционной системы, прибегают к использованию программы...
Файлы mdx чем открыть
MDX - это формат образов дисков, который был создан разработчиками программы DAEMON Tools. Это формат был создан в результате усовершенствования...
Adblock detector