Java中的数据类型和引用

JAVA数据类型分primitive数据类型引用数据类型

Java中的primitive数据类型分为四类八种。primitive也不知道怎么翻译比较贴切, 暂且叫他基本数据类型吧, 其实直接从英文的字面意思理解更为容易。

primitive数据类型包括: boolean , char , 整型, 浮点型。 整型又包括:short, byte, int, long 。 浮点型又包括:float, double

所有primitive总共是八种。 大小分别为:boolean(由JVM决定) char(16 bits) short(16 bits) byte(8 bits) int(32 bits) long(64bits) float(32 bits) double(64 bits)

除了基本的数据类型, Java中剩下的都是引用(reference)。

一般来说, 对象的声明、赋值、创建有三个步骤: 通过一个简单的小例子来看 : 

Dog myDog = new Dog(); 通过这句话我们可以创建一个Dog的对象(myDog),以后看到这种new语句一定要在脑海中有三个步骤把它拼凑起来 :

  • step1: Dog myDog = new Dog(); 执行语句中的红色部分, 声明了一个引用 myDog(要求java虚拟机在栈上分配空间给引用变量,并命名为myDog, 此引用变量将永远被固定为Dog类型)
  • setp2: Dog myDog = new Dog(); 执行语句中的红色部分, 创建了一个对象(要求java虚拟机在堆上分配空间给Dog对象)
  • setp3: Dog myDog = new Dog(); 执行语句中的 “=” 符号, 连接了对象和引用 (把Dog对象赋值给myDog这个引用)

此处有一个特殊的对象需要特别说明下, 那就是数组, 对, 数组也是对象! 数组对象的创建过程如下 : (图片截自HeadFirst Java)

 

原文地址:https://www.cnblogs.com/beyond-Acm/p/4385240.html