![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 5 Всего: 13 |
вот как раз код к этому... -------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
Жесть, меня на сановском форуме все дружно уверяют, что абсолютно все объекты передаются по значению, а не по ссылке.
![]() -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
fixxer |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 14.9.2006 Где: Саратов, Россия Репутация: 6 Всего: 27 |
Да, это действительно так. В случае ссылочной переменной по значению передается ссылка (копируется во фрейм вызова), поэтому и ее нельзя изменить, чтобы изменения были видны во вне метода. -------------------- ![]() |
|||
|
||||
ekr |
|
|||
![]() ...и это пройдет... ![]() ![]() Профиль Группа: Участник Сообщений: 359 Регистрация: 6.5.2007 Где: Moscow, RU Репутация: 3 Всего: 19 |
разница в контексте. дело в том, что действительно, это правда. но когда речь заходит об объектных типах, то по значению передается объектная ссылка, так что получается, что формальный и фактический параметры смотрят на один объект. поэтому можно из метода его менять. получается, что технически по значению, а концептуально по ссылке. во как загнул ) |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
Я как то првивык разделять объект и ссылку на объект. Всё таки это разные вещи.
Объект - это, как известно, экземпляр класса. А ссылка - это всего лишь ссылка ![]() -------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
3,14, ну вот, а говорил, что знаешь и понимаешь.
![]() В java все объектные переменные - действительно представлены ссылками. Сами ссылки передаются в методы в безопасном виде, что позволяет получить и изменить данные в объекте по ссылке, но не позволяет изменить саму ссылку. P.S. Блин, на моей памяти уже раз так четвёртый тему мусолим... -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
nornad, это, знаешь ли, уже вопрос терминилогии. Считать ли пер-ую типа ссылка, передаваемую в метод, объектом. В Java различия между этимми понятиями не делается, но это только в Java.
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
3,14, вот-вот. Ты уже сам ответил на свой вопрос.
![]() Если пишешь на Java, надо придерживаться её идеологии. По идеологии Java всё есть объект (ну, за исключением встроенных типов, конечно). Понятие ссылки в Java вообще отсутствует. И не надо его из С/С++ тянуть - там полного аналога для этого не существует. Нужно просто понять и принять идеологию, а не пытаться притянуть её к другой идеологии, которую ты уже знаешь. -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 6 Всего: 24 |
nornad, я на Java пишу гораздо дольше, чем некогда писал на C++. Просто такая идеология куда как удобней когда нужно копатся, напрмер, с байт кодом.
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Чего-то тут много словов всяких
![]() Да вернуть массив строк и всех делов Вот для примера - разбиавем строку на массив строк - разделителем является символ двоеточия ":"
|
|||
|
||||
nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
Ниасилил? ![]() А пример, кстати, хорош - коротко и ясно. Если хочется большего - меняем String на Object и радуемся резко возросшим возможностям. Жаль только, что камраду такой вариант не нравится - не лаконичен, видите ли... Ну, кому что, как говорится. -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
math64 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Если не нравится возвращать массив, то проще этого не придумаешь:
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |