一、前言
上篇文章我们手写了第一个Java程序,不知道🐖🐖有没有温习,没事的话可以自己对着上篇文章敲一敲,复习复习哈,这篇文章主要介绍,Java中的各种数据类型以及含义
二、Java中的数据类型
Java世界中,主要有两种数据类型,第一种是基础数据类型
,第二种是引用数据类型
。
基础数据类型
基础数据类型共有8种,如下所示
- 整点数:
byte,short,int,long
。 - 浮点数:
float,double
。 - 字符型:
char
。 - 布尔型:
boolean
。
引用数据类型
引用数据类型非常多,大致包括:
类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
例如,String类型就是引用类型。
简单来说,所有的非基本数据类型都是引用数据类型。
三、引用数据类型和基础数据类型的区别
存储位置不同
我们先来看看官方是怎么解释的:
基本变量类型
- 在方法中定义的非全局基本数据类型变量的具体内容是存储在栈中的
引用变量类型
- 只要是引用数据类型变量,其具体内容都是存放在堆中的,而栈中存放的是其具体内容所在内存的地址
- ps:通过变量地址可以找到变量的具体内容,就如同通过房间号可以找到房间一般
🐖🐖你看到上面的文字可能看不太懂,其实通俗的来讲就是:
比如一个大的仓库,这个仓库就是我们编写的这个函数,这里面会存放着很多东西,那么,基础类型的变量在仓库种存放的就是它本身,比如在仓库中有一件商品,这件商品就是他自己本身,引用数据类型存放的是什么呢?他存放的是他的地址,就好比,一个仓库中存放了一个地址牌,这个地址牌上面写着这件商品的地址,我们通过这个地址可以访问到这件商品。
调用方式不同
基本变量类型
- 在方法中定义的非全局基本数据类型变量,调用方法时作为参数是按数值传递的
引用变量类型
- 引用数据类型变量,调用方法时作为参数是按引用传递的
这边留个小作业,猪猪你能通过上面我的解释,来理解下调用方式不同是什么意思吗~
Q.E.D.