繁体   English   中英

在JAVA中,原始数据类型如“ int”是CLASS还是OBJECT?

[英]In JAVA, a primitive data type like “int” a CLASS or an OBJECT?

我读到原始的Java类型( booleanbytecharshortintlongfloatdouble )和关键字void也被表示为类Class对象。 那么这意味着intClass的对象,那么以下语句不会引发错误,因为.class仅与类名一起使用?

Class c = int.class
  • int是数字类型。
  • int.class是一个类文字。

类文字是由类,接口,数组或原始类型的名称或伪类型void组成的表达式,后跟a . 和令牌类。

ClassLiteral

  • TypeName {[ ]} . class
  • NumericType {[ ]} . class
  • boolean {[ ]} . class
  • void . class

JLS 10-15.8.2。 类文字

此外,

Class<Integer> intClass = int.class;

根据

p.class的类型(其中p是原始类型的名称(第4.2节 ))是Class<B> ,其中B是装箱转换后的p类型的表达式的类型(第5.1.7节 )。

JLS 10-15.8.2。 类文字

这是因为所有都具有Class 就像在文件中说的那样。

原始Java类型(布尔,字节,字符,short,int,long,float和double)以及关键字void也表示为Class对象。

这对于反射很有用。 这就是为什么您可以使用int.class和所有原始类型的原因。 因此,所有基元都有一个类...即使它们是基元。 有点令人困惑,但对于了解它是int.class or a Integer.class

Java是一种强大的类型化语言,这就是为什么变量必须

在以后在程序中使用之前要定义。

变量是保留存储位置以将值存储在计算机内存中的存储桶或容器。 创建变量时,会在计算机内存中保留一些空间。

根据变量的数据类型,您的操作系统分配内存并将该值存储在保留的内存中。

Java有两种可用的数据类型:

1)原始数据类型2)引用/对象数据类型

Java中有八个原语:

字节(数字,1字节)短(数字,2字节)整数(数字,4字节)长(数字,8字节)浮点数(浮点数,4字节)双精度(浮点数,8字节)char(一个字符,2字节)布尔值(对或错,1个字节)

在Java的视频教程中检出原始数据类型

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM