1 什么是变量
可以把变量理解为一种容器,可以用它来存储数据或者对象的内存地址。
2 java中的变量
2.1 主数据类型(primitive)& 引用类型(reference)
主数据类型包括:numeric types, boolean type, returnAddress type。跟引用类型相比较,主数据类型存储的是实际值,而引用类型存储的不是数据本身而是数据的引用地址。
`其中需要注意的是 returnAddress 数据只存在于字节码层面,与编程语言无关,也就是说,我们在 Java 语言中是不会直接与 returnAddress 类型的数据打交道的。returnAddress 类型的值是指向字节码的指针,不管是物理机还是虚拟机,运行时内存中的数据总归可分为两类:代码,数据。对于冯诺依曼结构的计算机,指令数据和数值数据都存储在内存中,而哈弗结构的计算机,将程序指令与数据分开存储。对于 JVM 来说,程序就是存储在方法区的字节码指令,而 returnAddress 类型的值就是指向特定指令内存地址的指针`。

3 Python中的变量类型
在Python中一切皆对象,无论什么样的变量保存的都是数据的引用地址。因此在Python中命名变量时不需要强调类型,因为所有的变量存储的都是内存地址。
4 Python与java比较
1. java中的变量分为主数据类型,Python中的变量全是引用类型。
2. java中变量需先声明类型,可以先赋值后引用,且主数据类型的大小固定。Python中的变量无需声明类型,但是创建时必须先赋值。
3. Python中为了提高性能对一些常用的不可变类型数据采用缓存机制。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/9882.html