是否有理由让某些包装类与具有不同大小写的基元(即布尔/布尔)具有相同的名称,而有些则不是(即int / Integer)?
我不想要意见,但要知道原因是否基于相关的设计决策,看似不一致。
答案 0 :(得分:1)
可能是因为Java是为吸引C / C ++开发人员而创建的。
int
来自C ++,它从C语言中获取。
boolean
而不是预先C99 typedef'd bool
首先在ALGOL 60中使用。 C ++有一个名为bool
的独立数据类型。我不认为ALGOL 60实际上有名称boolean
。它以George Boole的名字命名,George Boole在19世纪中期首次定义了一个代数逻辑系统。
至于为什么autoboxed Class name与原始名称,原始名称已经存在,就像我描述的那样。由于您可能会在代码中告诉int
和Int
之间存在差异,因此会更加明确。在Java中,按照惯例,类名在CamelCase
中。因此,Integer被拼写出来并大写。