当android Color类的所有成员都是静态成员时,为什么会有一个public构造函数?这只是一个错误吗?
Color.java文件的源代码显示,没有Google工程师明确为Color类编写公共构造函数。
Color类的API文档确实列出了公共构造函数,但是Java具有隐式的默认构造函数,即文档中列出的构造函数。
这里真正可能的问题是/或者,
对于第一点,我认为谷歌决定列出隐式默认构造函数不是任何错误或错误的设计决定。他们可以在类中定义一个构造函数以限制对任何构造函数的访问,但这只需要额外的代码,并且为仅具有静态成员的类创建默认的构造函数不会造成任何对该类的滥用。
对于第二点,进行编译器优化以防止仅具有静态成员的类中的任何隐式默认构造函数可能是有意义的,但这是另一个线程的问题。
tl; dr不,不是一个错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句