powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
5 сообщений из 5, страница 1 из 1
Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
    #39276144
I dont know
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток, в моём классе есть метод :
Код: java
1.
2.
3.
4.
5.
6.
7.
 private Point2D GetNearestGridPosition(int curX, int curY) {
        
        double x = Math.round(curX/gridSize);
        double y = Math.round(curY/gridSize);
       
        return new Point2D.Double(x*gridSize, y*gridSize);
    }


который возвращает координату, путём создания нового Point2D и есть переменная-член класса cursorPos,(инициализируется в конструкторе: cursorPos = new Point2D.Double();) которая хранит координаты и при отрисовке по этим координатам рисуется "крестик". Сама переменная cursorPos меняется при движении мышки:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
@Override
    public void mouseMoved(MouseEvent me) {
        int x = me.getX();
        int y = me.getY();
        
        if(snapCursorToGrid) 
            cursorPos = GetNearestGridPosition(x, y);
        else {
            cursorPos.setLocation(x, y);
        }
        
        repaint();
    }


Собственно вопрос, это правильно что я при каждом движении мышки по сути возвращаю новый объект или лучше в функции GetNearestGridPosition) непосредственно менять cursorPos и ничего из неё не возвращать? (Планируется что эта функция будет использоваться только в этом классе)
...
Рейтинг: 0 / 0
Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
    #39276339
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
I dont knowили лучше в функции GetNearestGridPosition) непосредственно менять cursorPos и ничего из неё не возвращать?
в общем случае - лучше. Но надо ещё смотреть цепочку инициализации и жизни объекта cursorPos
...
Рейтинг: 0 / 0
Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
    #39276365
I dont know
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Спасибо, а ещё момент, а вот когда заново вызывается new Point2D.Double(...), снова выделяется память, а старое значение из переменной куда девается? Под него же тоже выделялась память... или её сборщик собирает и можно не париться по этому поводу?
...
Рейтинг: 0 / 0
Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
    #39276366
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
I dont knowСпасибо, а ещё момент, а вот когда заново вызывается new Point2D.Double(...), снова выделяется память, а старое значение из переменной куда девается? Под него же тоже выделялась память... или её сборщик собирает и можно не париться по этому поводу?
В подавляющем большинстве случаев сборщик соберет и можно не парится
...
Рейтинг: 0 / 0
Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
    #39276381
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,
+1
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Стоит ли возвращать new Point2D из метода класса и присваивать рез. переменной-члену?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]