Я пишу программу, которая работает с системой координат, поэтому мне нужно использовать координаты довольно часто. Я решил использовать класс Point
, поскольку он очевидно позволяет легко хранить координаты точки.
Проблема повсюду в моей программе. Я сохраняю ее как int
, тогда как Point
возвращает значение double при использовании методов getX()
и getY()
. Конечно, я могу легко привести его к int
, но это выглядит не очень элегантно и вносит ненужную путаницу в код.
Ничего, если я просто получу значение напрямую? Так:
Point p = new Point(0, 0);
int x = p.x;
вместо:
int x = p.getX();
Я даже не уверен, имеет ли это какое-то значение, я просто знаю, что геттеры и сеттеры существуют по какой-то причине и должны использоваться.
Point
и предоставляет средства доступа, делегирующиеPoint
. Таким образом, выDecorate
создаете класс и используете композицию. Если вы затем решите хранить данные непосредственно какint
в будущем, вы будете защищены. Изменить: у davidxxx есть пример прямого использования вашего собственного. - person KevinO   schedule 27.05.2017