Color.black和Color.BLACK有什么区别?

时间:2012-06-25 11:21:20

标签: java colors field

  

可能重复:
  Difference between Color.red and Color.RED

我已经看到Java类java.awt.Color包含一对具有相同名称的字段,一次用大写字母,一次不用。例如:Color.blackColor.BLACK。有区别吗?

修改

......如果没有,为什么还有两个?

5 个答案:

答案 0 :(得分:7)

请查看documentation

public static final Color black
  

黑色。在默认的sRGB空间中。


public static final Color BLACK
  

黑色。在默认的sRGB空间中。 自:1.4

不,没有区别。

它们都存在,因为black已经引入{{1}}类,然后他们意识到它没有遵循命名约定,所以他们添加了大写版本(你可以看到自1.4 写的)。他们没有删除旧的,以免打破任何< 1.4代码。

答案 1 :(得分:5)

除了Color.BLACK遵循静态最终字段的命名约定之外没有区别。

答案 2 :(得分:2)

从我在源头看到的内容没有区别

public final static Color black     = new Color(0, 0, 0);
public final static Color BLACK = black;

答案 3 :(得分:1)

没有区别,但是由于Java编译器没有强制执行大写,但是违反它们被认为是不好的风格。 SO color.BLACK应该是首选,以增加可读性。

答案 4 :(得分:0)

根据Color类字段的描述,没有任何区别。

1)Color.black

2)Color.BLACK