java的基本数据类型是存在栈里还是常量池里?

发布于2022-01-12 17:22:25

我在网上看,既有说存在栈里的也有说存在常量池里的,到底存在哪里的?比如 int a = 1 这个 a 和 1 都是存在哪的啊?

1个回答
admin
网友回答2022-01-12

什么是常量
用final修饰的成员变量表示常量,值一旦给定就无法改变!

final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。 个人理解: 1.只有被final修饰的基本数据类型和String类型变量在编译时才会被确定下来,因此存放在常量池中。 带final的基础类型和String类型并且用常量表达式初始化的才算 constant variable ,其他的都不是) 2.而对于int a=1,数据是存在栈中的,因为这个值并不是常量(区别于常量的定义) ————————————————

回到
顶部