java数据类型

数据类型用来确定要存储在内存单元中的数据的类型; 

在Java中,数据类型被区分成两个种类: 

原始数据类型 

引用数据类型 

 

八种原始数据类型


 

在Java中,除了上述8种原始数据类型的变量以外,其余 

 

的全都属于引用数据类型,其中包括:  

 

 – 数组  

 

 – 对象  

 

存储在引用类型变量中的值是该变量表示的值的地址;  

 

可以借用C语言中指针的概念来理解引用数据类型。

 

C语言中的内存分配  

 

C语言中内存分配的两种形式:  

 

栈内存:  

 

 –  特点:和作用域同生命周期,自动申请,自动释放。  

 

 –  申请方式:局部变量,形式参数。  

 

 –  栈内存中的空间一般都有名称,通过变量名访问其存储的数据 。  

 

堆内存(即动态内存分配):  

 

 –  特点:手工申请,手工释放,生命周期由程序员决定。  

 

 –  申请方式:由malloc函数或calloc函数申请,realloc函数进行调整,free函数负责释放。  

 

 –  堆内存中的空间一般没有名称,只能通过指针访问。  

 

Java中的内存分配  

 

Java中的原始数据类型与C语言中的基本数据类型一样,其变量都是在栈中分配空间;  

 

而除了8种原始数据类型以外,其它的任何数据都不可以在栈中分配,只能到堆中开辟空间,而在堆中分配的空间又只能通过指针访问;

 

通过指针访问堆内存的方式,在Java中被称作引用数据类型;  

 

可以认为,Java中的引用就类似于C语言中的指针,只是对指针进行了一定程度上的包装,避免了因直接操作指针而造成的数据意外损坏,从而导致程序错误的情况。  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值