Какова цель java.awt.Color.blue и java.awt.Color.BLUE - PullRequest
5 голосов
/ 03 апреля 2012

Почему в классе java.awt.Color определены две Color константы?Например,

public static final Color blue;
public static final Color BLUE;

Это явно избыточно.Есть ли какой-то конкретный сценарий использования - например, лучшая практика, где цвет в верхнем регистре предпочтительнее цвета в нижнем регистре или наоборот?

Ответы [ 2 ]

5 голосов
/ 03 апреля 2012

Это соглашение об именах.

Java изначально определила несколько имен цветовых констант в нижнем регистре, что нарушило правило именования использования верхних регистров для констант.Их лучше всего использовать, поскольку они доступны во всех версиях Java: Color.black, Color.darkGray, Color.gray, Color.lightGray, Color.white, Color.magenta, Color.red, Color.pink, Color.orange, Color.yellow, Color.green, Color.cyan, Color.blue

В Java 1.4 добавлены правильные прописные имена для констант: Color.BLACK, Color.DARK_GRAY, Color.GRAY, Color.LIGHT_GRAY, Color.WHITE, Color.MAGENTA, Color.RED, Color.PINK, Color.ORANGE, Color.YELLOW, Color.GREEN, Color.CYAN, Color.BLUE

Источник

3 голосов
/ 03 апреля 2012

Они являются синонимами. Имена в верхнем регистре были введены в Java 1.4 для соответствия соглашениям об именах Sun (см. Раздел 9) для констант.

...