1、java中的变量与数据类型
变量是一个容器,用来装什么的呢?装内存地址,这个内存地址对应的是内存中某个数据。
那为什么这个容器不直接装这个数据更简洁呢?因为直接装数据的话,这个数据就无法被别的变量使用,无法复用就会导致很多不便。
所以变量的内存分配可以看成两个不部分:1、变量在内存中的分配(“变量分配”) 2、变量所引用的数据在内存中的分配(“数据分配”)
1.1、变量类型有:
局部:在方法内声明的变量
实例:在类中但在方法外声明并且没有static
静态:声明为static的变量
1.2、变量的数据类型有:
1、原始数据类型 2、引用数据类型
2、思考
原始数据类型变量的“变量分配”和“数据分配”是在一起的(都在方法区或栈内存或堆内存,这里思考什么时候在方法区、什么时候在栈内存、什么时候在堆内存???)
引用数据类型的“变量分配”和“数据分配”不一定是在一起的(什么情况是在一起的?什么情况不在一起?)
3、例子:
public class Fruit {
private static int x = 10;
static BigWaterMelon bigWaterMelon_1 = new BigWaterMelon(x);
private int y = 20;
private BigWaterMelon bigWaterMelon_2 = new BigWaterMelon(y);
public static void main(String