java中的引用变量

Python015

java中的引用变量,第1张

首先没有编译时变量这个概念,有的仅是编译时类型和运行时类型。

编译时引用类型由声明该变量时使用的类型决定,运行时引用类型由实际赋给该变量的对象决定。

比如:Object s = new String("example")

Object 是引用的编译时类型,String是引用的运行时类型。其中后者必须是前者的子类,编译时只能调用编译类型的方法,运行时才能调用运行时类型的方法。

基本数据类类型存的是数值本身,而引用类型变量在内存放的是数据的引用,并不是数据的本身,引用类型变量是以间接方式去获取数据。引用类型变量都属于对象类型,如:数组、类、字符串等都属于引用类型变量。所以,引用类型变量里面存放的是数据的地址。

说白了基本数据类型变量就像是直接放在柜子里的东西,而引用数据类型变量就是这个柜子对应编码的钥匙。钥匙号和柜子对应。