定义之间的真正区别是什么setXxx(Color.red)
and setXxx(Color.RED)
?
我在网上找到了以下解释。这都是关于命名约定的吗?
Java最初定义了一些小写的颜色常量名称,这违反了常量使用大写的命名规则。它们在所有 Java 版本中均可用:Color.black、Color.darkGray、Color.gray、Color.lightGray、Color.white、Color.magenta、Color.red、Color.pink、Color.orange、Color.yellow、Color .绿色、颜色.青色、颜色.蓝色
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、颜色.绿色、颜色.青色、颜色.蓝色
代码本身如下:
public final static Color red = new Color(255, 0, 0);
public final static Color RED = red;
大写字母是在 JDK 1.4 中引入的(以符合其命名约定,表明常量must为大写)。
本质上,根本没有区别(字母大小写除外)。
如果我真的很勇敢,Oracle 可能会疯狂地删除小写的常量,但这会破坏 JDK 1.4 之前编写的所有其他代码。你永远不知道,我建议坚持使用大写字母作为常量。不过,它首先必须被弃用(正如安德鲁·汤普森提到的)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)