Difference between Color.red and Color.RED

前端 未结 3 770
臣服心动
臣服心动 2020-11-30 03:54

What\'s the real difference between definitions for setXxx(Color.red) and setXxx(Color.RED)?

I\'ve found the following explanation on the w

3条回答
  •  感动是毒
    2020-11-30 04:11

    There's the code itself:

    public final static Color red = new Color(255, 0, 0);
    
    public final static Color RED = red;
    

    The upper case letters were introduced in JDK 1.4 (to conform to its naming convention, stating that constants must be in upper-case).

    In essence, there are no difference at all (except letter casing).


    If I want to really be brave, Oracle might go wild and remove constants that is lower-cased, but then that would break all other code that's written pre-JDK 1.4. You never know, I would suggest sticking to uppercase letters for constants. It first has to be deprecated though (as mentioned by Andrew Thompson).

提交回复
热议问题