Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
ftkvyn

Разные объекты работают с одним полем

18.11.2010, 18:24. Показов 815. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Есть класс Generations. У него есть поле
Java
1
private int[][] currentGeneration;
которое инициализируется и устанавливается следующим образом:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 private void initializeFields()
    {    
        currentGeneration = new int[sizeX][];
        for (int i = 0; i < sizeX; i++) 
            {
               currentGeneration[i] = new int[sizeY];               
            }
    }           
            
 
 public void setGeneration(int [][] field)
    {
        GenerationNumber = 1;
        currentGeneration = field.clone();
    }
Проблема в следующем. Есть 2 объекта этого класса, и когда один объект меняет это поле, оно так же меняется и у второго. Подскажите, пожалуйста, почему такое может происходить и как это исправить.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.11.2010, 18:24
Ответы с готовыми решениями:

объекты с одним и тем же именем
В учебнике Шилдта в листинге про сборщик мусора нашел такой интересный код: public class Finalize { public static void main(String...

Работа с памятью: можно ли в массив объектов с полем типа "Родитель", вписать объекты с полем типа "Потомок"
Здравствуйте. Предположим, что у нас есть массив из структур в которых находиться класс Item и число Count. Можно ли на место Item записать...

Калькулятор с одним текстовым полем
Здравствуйте! Начал изучать Basic (Знаю Pascal, структурное программирование на C++) Хотел написать калькулятор, но с одним условием: ...

2
2 / 2 / 0
Регистрация: 14.11.2010
Сообщений: 8
20.11.2010, 21:42
а можно зыркнуть на весь класс?
1. 2 ссылки класса указывают на 1 объект (сеттер для поля с массивом не юзался)
2. ссылки на int [][] указывают на один объект - ибо массивы в джава тоже того
3. 2 объекта = 2 ссылки, но один объект int[][] на двоих
0
ftkvyn
20.11.2010, 23:42
Благодарю, проблема уже решилась. Дело было в том что я неправильно копировал двумерные массивы. Я вызывал метод clone(), и он создавал новый массив массивов в котором были ссылки на массивы исходного двумерного массива. То есть получалось что у меня 2 массива работали с одними и теми же участками памяти.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.11.2010, 23:42
Помогаю со студенческими работами здесь

Списки DBLookupComboBox, с одним ключевым полем в таблице
Подскажите пожалуйста. Задача в следующем: 1. На форме необходимо разместить несколько списков, привязанных к одной таблице БД. На этих...

Выбрать запись с каждым одним уникальным полем
Есть таблица с 3 колонками. Много записей. То есть изначально в базе есть записи где первые 2 колонки одинаковы а третья может...

Обработчик на PHP для HTML-формы с чекбоксами и одним полем
Здрасте Нужна помощь в создании обработчика на PHP для этой формы Что делает? Выводит в первой строке/блоке список выбранных книг с...

Реализовать форму с одним полем для ввода адреса HTML-страницы
Доброго времени суток! Необходимо реализовать форму с одним полем для ввода адреса html-страницы. Форма должа вівести все ссілки, которіе...

Результат Sql запроса состоит из нескольких строк отличающихся одним полем
Составляю отчеты из БД, делаю выборку. Ее результат это две строки ну дальше будет и больше. Так вот эти строки различаются только Id...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru