|
|
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
в Java как я понимаю есть простые типы которые передаются по значению и есть сложные типы которые передаются по ссылке. вопрос в следующем каким типом является String пример Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. old_value new value old_value Почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2006, 19:22 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
/topic/229151&pg=2#2024150 ----------------------------------- The Bat + My Gate Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2006, 19:30 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
fuf спасибо типа фак читал только давно поэтому и не видел ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2006, 19:55 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
vfabrв Java как я понимаю есть простые типы которые передаются по значению и есть сложные типы которые передаются по ссылке.Нет. В Java все типы передаются по значению. Осмысли это, это написано в "Философии Java", похоже, тебе уже пора ее читать. Объекты тоже передаются по значению, просто в метод копируется ссылка на объект (или String, который тоже объект) и все операции над ссылкой в методе не повлияют на значение переменных выше по стеку Т.о. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2006, 20:39 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Вы видно прочитать прочитали, да ничего путного из этой книги не вынесли ... может перечитать следует? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. какой ответ получается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2006, 23:05 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
vfabrВы видно прочитать прочитали, да ничего путного из этой книги не вынесли ... может перечитать следует? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. какой ответ получается? Массивы передаются по ссылке, поэтому метод изменит именно массив, а не строку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 00:14 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
[...] я знаю что объекты передаются по ссылке и что простые типы передаются по значению я хотел убедится что String является "исключением" чтоли ... вообщем надеюсь понятно далее я задал вопрос чтобы убедится в своих умозаключениях все я получил ответ на свой вопрос тема закрыта [...] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 00:48 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
vfabr вопрос в следующем каким типом является String пример .... почему? 1. String - ссылочный тип. 2. Ключевая фраза: "В Java реализован только один способ передачи параметров - по значению" Потому что твой объект - формальный параметр str является локальным объектом в методе workWithString. Он создается локально в методе при его вызове, в него копируется значение из твоего "внешнего" объекта my_str (значение ссылки на "внешний" объект- стрку "old_value"), потом ты это значение (значение ссылки) изменяешь на созданный локально в методе объект-строку "new value". "Внешний" же объект my_str продолжает указывать на объект - строку "old_value". Вот и все. 3. Сам баран. Тебе уже несколько раз тоже самое сказали. Даже я понял. Это же надо: vfabr я знаю что объекты передаются по ссылке и что простые типы передаются по значению Еще раз читай. ВСЕ передается по значению. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 06:28 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Вообще все передаеться по ссылке, если я создам массив на гигабайт и буду его передовать в методы он же не будет копироваться ? :-) В JAVA вообще все не примитивные переменные суть указатели на экземпляры объектов. и если вы делаете Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 11:38 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Квиринг Алексей ВикторовичВообще все передаеться по ссылке, если я создам массив на гигабайт и буду его передовать в методы он же не будет копироваться ? :-) В JAVA вообще все не примитивные переменные суть указатели на экземпляры объектов. и если вы делаете ... то методу workWithString передаеться именно указатель( а вот он то и передаеться по значению - но следует замететь не сам объект копируеться, а только указатель на него). Потом вы этот указатель меняете командой str = "new value", но меняеться именно копия указателя, который и указывает на новый объект "new value". А старый указатель my_str как указывает на new String("old_value") так и указывает дальше :-) Тебе так и сказали: автор Объекты тоже передаются по значению, просто в метод копируется ссылка на объект (или String, который тоже объект) и все операции над ссылкой в методе не повлияют на значение переменных выше по стеку Гигабайт копироваться не будет. Будет копироваться ссылка на него. КОПИРУЕМЫМ ЗНАЧЕНИЕМ ДЛЯ ОБЪЕКТА ЯВЛЯЕТСЯ АДРЕС В ПАМЯТИ, ГДЕ ОН РАСПОЛОЖЕН (ссылка) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 12:34 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Лучше всех по этому поводу высказался сам Брюс Эккель: Брюс ЭккельХорошо объяснив точку зрения обеих сторон и сказав: «То, что вы думаете о ссылке, зависит только от вас», - я попытался уйти в сторону от этого вопроса. В конце концов, это не так уж и важно – главное здесь понять то, что передача ссылки означает возможное неожиданное изменение объекта, который привязан к ссылке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 14:19 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Думаю, что String (а еще Integer, Float, Double etc) как раз и попадают под исключение из «возможное изменение», т.к. эти объекты являются неизменяемыми. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 14:25 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Если мы говорим о передаче объекта в метод в качестве параметра, то правильнее сказать наверное будет так: в метод передается значение ссылки, а не просто, какое то непонятное значение. Вот объясните мне, что значит значение объекта? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 15:59 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
Объект - это переменная, ее значение - это состояние объекта в конкретный момент времени ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 16:17 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
funikovyuriОбъект - это переменная, ее значение - это состояние объекта в конкретный момент времени значением переменной не может быть состояние объекта. Значение переменной это число, которое предсавляет из себя либо данные (простой тип) либа адрес ОП (сложный тип). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 16:37 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
авторЗначение переменной это число, которое предсавляет из себя либо данные (простой тип) либа адрес ОП весьма поверхностная трактовка понятия "значение переменной какого-либо типа" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 16:49 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
сказать, что в метод предается "состояние объекта в конкретный момент времени" тоже как то не очеь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 17:15 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
В метод передается ссылка на объект (ссылка на переменную). При этом ссылка передается по значению ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 17:23 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
авторПри этом ссылка передается по значению где-то происходит по другому? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 17:48 |
|
||
|
String является простым типом данных?
|
|||
|---|---|---|---|
|
#18+
vfabr авторПри этом ссылка передается по значению где-то происходит по другому? аха, при передачи массива, предеается сама ссылка на этот массив. Или в C++ например все подругому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.01.2006, 17:55 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=33488380&tid=2150437]: |
0ms |
get settings: |
11ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 432ms |

| 0 / 0 |
