解释符号引用、字面量、常量和变量之间的区别

转自:https://blog.csdn.net/chelen_jak/article/details/49814353

字面量是指由字母,数字等构成的字符串或者数值,它只能作为右值出现,所谓右值是指等号右边的值,如:int a=123这里的a为左值,123为右值。

常量和变量都属于变量,只不过常量是赋过值后不能再改变的变量,而普通的变量可以再进行赋值操作。

符号引用 :符号引用以一组符号来描述所引用的目标。符号引用可以是任何形式的字面量,只要使用时能无歧义地定位到目标即可,符号引用和虚拟机的布局无关。在编译的时候一个每个java类都会被编译成一个class文件,但在编译的时候虚拟机并不知道所引用类的地址,多以就用符号引用来代替,而在这个解析阶段就是为了把这个符号引用转化成为真正的地址的阶段。
 

例:

int a;//a变量,a也是符号引用

const int b=10;//b为常量,符号引用,10为字面量

string str="hello world";//str为变量,符号引用,hello world为也字面量

猜你喜欢

转载自blog.csdn.net/qq_22339269/article/details/83066232
今日推荐