Почему java.awt.Color возвращает значения RGB? - PullRequest
0 голосов
/ 30 ноября 2018

Я искал вокруг и не смог ничего найти.Одна из причин в том, что я не знаю, с чего начать поиск.: /

Так что в основном я играл с цветами, а затем я использовал System.out.println(java.awt.Color.black), и результат был java.awt.Color[r=0,g=0,b=0], что меня как-то удивило, так как я думал, что результат будет что-то вроде java.awt.Color@2a33fae0, потому что из того, что ямог найти 'черную' переменную в java.awt.Color типа java.awt.Color, почему и как это вывод?

Ответы [ 2 ]

0 голосов
/ 30 ноября 2018

В Java оператор печати использует реализацию toString для класса.Так что, если вы не реализуете его, он будет использовать toString из Object, и поэтому вы получите вывод типа java.awt.Color@2a33fae0, но для Color он использует toString из Color, так что вы получитезначение RGB.Они просто решили реализовать toString так, как они могли бы выбрать hex или любое другое представление.

0 голосов
/ 30 ноября 2018

При печати ссылки на объект вы получаете строку, возвращаемую методом toString.Класс Color определяет метод toString, который создает вывод, который вы видите там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...