java中Integer是一个对象吗?

2020-04-02 21:52发布

2条回答
yuixan
2021-10-28 14:44

首先,此处用到的Integer类,是java中的一个包装类型,java中的数据类型包括。
基础类型:byte/char/short/int/long/float/double/boolean
包装类型有:Byte/Character/Short/Integer/Long/Float/Double/Boolean
第二,此处为什么可以直接用类名直接调用方法,而没有创建对象是由于Integer中的.parseInt方法为静态的方法(用static关键字修饰的方法),静态方法是可以用类名直接调用的,
最后,为什么静态变量就可以不用创建对象用类名直接调用呢,这涉及到java的内存中怎样处理静态变量和实例普通的的对象,1、静态变量(方法)(static修饰的):在程序加载时系统就为它在堆中开辟了内存,堆中的内存地址存放于栈以便于高速访问。静态变量的生命周期--一直持续到整个"系统"关闭。即你可以直接用用静态变量(static修饰的变量) 2、实例变量(方法):当你使用java关键字new的时候,系统在堆中开辟并不一定是连续的空间分配给变量。即只有通过new创建实例后才能调用的方法、变量。 有时间可以看一下java的内存机制相关的部分,对于java内存机制的了解可以更好的理解这部分内容。

一周热门 更多>