Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Что делает "Return" в Java? Зачем используют Return  
:(
    Опции темы
javanovichok
Дата 20.10.2009, 06:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 23.3.2009

Репутация: нет
Всего: нет



/** Return a String representation of a Point */
public String toString() 

Что делает "Return" в Java?
Какая разница с  Return или без него метод?
PM MAIL   Вверх
jManiak
Дата 20.10.2009, 06:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 6.2.2007
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Это значит будет ли возвращать что-то метод после своего выполнения или нет.
Например: функция которая используется для получения координат public point getXY();
Когда тело функции выполнится, в выходном параметре типа point будут находиться как раз координаты чего-то.
А если функция просто что-то делает, но каких-то конеретных значений не должна возвращать, то делается без выходного параметра: public void refreshScreen();, например перерисовывает экран.
PM MAIL ICQ   Вверх
ivanovpv
Дата 20.10.2009, 08:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Варвар
**


Профиль
Группа: Участник
Сообщений: 639
Регистрация: 26.1.2005
Где: Москва

Репутация: 4
Всего: 28



Цитата(javanovichok @  20.10.2009,  06:18 Найти цитируемый пост)
Что делает "Return" в Java?
Какая разница с  Return или без него метод? 


а Если быть точнее то не "Return", а "return"
б) return имеет два значения/смысла
       1) Возвращает из функции/метода некое значение с типом описанным в декларации метода/функции
       2) Обозначает точку выхода из метода/функции - например, точек выхода может быть несколько
в) Функция может не иметь явного вызова return, но это возможно только для void функций - то есть функций без возвращаемого значения. Неявно return в этом случае все равно есть и располагается после последнего исполняемого оператора в функции


--------------------
Aut viam inveniam aut faciam
PM MAIL Skype   Вверх
javanovichok
Дата 20.10.2009, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 23.3.2009

Репутация: нет
Всего: нет



Спасибо за полезные ответы.

А вообще, простым языком, куда что и зачем возвращать? Что меняется если не возвращать?
Я не понимаю что куда возвращается в JAVA и вообще в программировании.
раньше никогда не занимался и этим и пришлось начать программирование с JAVA.
PM MAIL   Вверх
AxNe0
Дата 20.10.2009, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 263
Регистрация: 24.4.2006
Где: St. Petersburg

Репутация: 4
Всего: 5



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

Если возвращать "ничего" (или, попросту говоря, ничего не возвращать), то ничего не меняется, программа просто выполняет какие-то операции и успешно о них "забывает". Например, печатает на экране приветствие:
Код

public void printHello() {
    System.out.println("Hello");
}


Если ты в одном методе хочешь получить сумму двух чисел, то имеет смысл в методе summ() возвращать число:
Код

public int summ(int a1, int a2) {
    return a1 + a2;
}

И соответственно, вызов этого метода будет выглядеть так:
Код

...
    int result = summ(2, 3);
...

В итоге, переменная result будет иметь значение 5.






--------------------
SCJP 6, SCBCD 5, OCEWSD 6
blog
PM ICQ Skype   Вверх
jManiak
Дата 21.10.2009, 04:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 6.2.2007
Где: Санкт-Петербург

Репутация: нет
Всего: 1



Автор, не советую начинать изучать программирование с Java.
PM MAIL ICQ   Вверх
Skynin
Дата 21.10.2009, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 359
Регистрация: 1.7.2007
Где: Харьков

Репутация: 6
Всего: 10



Цитата(javanovichok @ 20.10.2009,  17:09)
Я не понимаю что куда возвращается в JAVA и вообще в программировании.

Не знаю такого доходчивого объяснения для Java, но вот для Си:

Функции
Почти точно также и в Java методы, так что можно читать "заменяя" в тексте слово "функции" на "методы"

Зачем функции?

PM MAIL WWW ICQ Skype GTalk YIM MSN   Вверх
ivanovpv
Дата 21.10.2009, 12:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Варвар
**


Профиль
Группа: Участник
Сообщений: 639
Регистрация: 26.1.2005
Где: Москва

Репутация: 4
Всего: 28



Цитата(javanovichok @  20.10.2009,  17:09 Найти цитируемый пост)
А вообще, простым языком, куда что и зачем возвращать? Что меняется если не возвращать?
Я не понимаю что куда возвращается в JAVA и вообще в программировании.
раньше никогда не занимался и этим и пришлось начать программирование с JAVA. 


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

А void функция - это когда функция ничего не возвращает - ну скажем вы пишете другу простое письмо и ничего не просите прислать.

Прочитал, жесть какая-то  smile 


--------------------
Aut viam inveniam aut faciam
PM MAIL Skype   Вверх
javanovichok
Дата 21.10.2009, 16:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 23.3.2009

Репутация: нет
Всего: нет



AxNe0 - Спасибо. Это хорошо объясняет. Вам нужно преподавать.
jManiak - Нет выбора. Это программа универа. Я изучаю другое но должен пройти это.
ivanovpv - Хорошо объяснено. Спасибо. Ато учу на англиском совершенно новый предмет и крыша едет чуть.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0791 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.