为什么Java不抱怨保留字Float?

为什么Java不抱怨保留字Float?,java,reserved-words,Java,Reserved Words,我在Eclipse中输入了这个,并期望它的语法是错误的,但这是允许的。有人能解释一下这里发生了什么吗?Float和Integer关键字是否应该保留?这是什么类型的作业 Number Float = 99.455f; Number Integer = 2; 因为它不是保留字,所以它是自动装箱的。不,Float不是保留字float是保留字。在java中,Float(它是一个包装类)不是java保留关键字,而是Float(它是一个原语) Java区分大小写,float是保留关键字,但float不是。

我在Eclipse中输入了这个,并期望它的语法是错误的,但这是允许的。有人能解释一下这里发生了什么吗?
Float
Integer
关键字是否应该保留?这是什么类型的作业

Number Float = 99.455f;
Number Integer = 2;

因为它不是保留字,所以它是自动装箱的。

不,
Float
不是保留字
float
是保留字。在java中,Float(它是一个包装类)不是java保留关键字,而是Float(它是一个原语)

Java区分大小写,
float
是保留关键字,但
float
不是。

您正在创建一个名为
float
的变量。这就是全部。这不是一个保留字。由于语句的语法原因,编译器未尝试将其解释为类名。即使格式不好,它也不是无效的。

Float
不是保留字。它只是java.lang.Float类的一个名称,系统库类名(即使来自
java.lang
)也不保留
float
是一个保留字。你也可以

int String = 1;

但是我不建议。

这些怎么样,它们也可以编译。与Float或Integer没有区别,它们不是保留关键字,而是类名

            String String = "";
            Math Math = null;
            Object Object = null;

Java总是抱怨它经常发生。别担心!这不是Java代码。不要修改它。没有人反对。@RomanC:是的,这是Java代码。我已撤消标记删除。@T.J.Crowder如果是Java代码,我如何编译它?@romac:使用Java编译器。我不是在开玩笑,它在技术上没有什么问题,
Float
Integer
最终将成为变量名(正如一些答案所指出的那样)。你自己试试看:把它复制到一个文件中,然后通过
javac
:(如果这是你对这个问题的否决票,你可能会重新考虑。)“因为它不是保留的…”对“…它是自动装箱对象…”不,它是一个类名。(不是我的dv)我觉得奇怪的是,在一篇关于案例如何重要的帖子中,你用了错误的案例来表示“Java”;-)@JoachimSauer哈哈,谢谢,我实际上是在手机上输入的:PI并不真的接受格式不好的评论,正如我在问题中所说的,我只是在eclipse中测试了一些语法,没有得到我所期望的,我使用的不是实际的代码。不过谢谢你的解释。:)@用户1987378:我不认为这是针对你的,只是一个一般性的评论:这是可能的,原因如下,但这不是一个好主意。