关于java中基础数据类型与援用数据类型的引见【JAVA教程】,java,基本数据类型,引用数据类型
一、基础数据范例
byte
:Java中最小的数据范例,在内存中占8位(bit),即1个字节,取值局限-128~127,默认值0
short
:短整型,在内存中占16位,即2个字节,取值局限-32768~32717,默认值0
int
:整型,用于存储整数,在内存中占32位,即4个字节,取值局限-2147483648~2147483647,默认值0
long
:长整型,在内存中占64位,即8个字节-2^63~2^63-1,默认值0L
float
:浮点型,在内存中占32位,即4个字节,用于存储带小数点的数字(与double的区分在于float范例有用小数点只要6~7位),默认值0
double
:双精度浮点型,用于存储带有小数点的数字,在内存中占64位,即8个字节,默认值0
char
:字符型,用于存储单个字符,占16位,即2个字节,取值局限0~65535,默认值为空
boolean
:布尔范例,占1个字节,用于推断真或假(唯一两个值,即true、false),默认值false
引荐相干进修视频:java在线视频
二、援用数据范例
类、接口范例、数组范例、罗列范例、注解范例。
区分:
基础数据范例在被竖立时,在栈上给其分别一块内存,将数值直接存储在栈上。
援用数据范例在被竖立时,起首要在栈上给其援用(句柄)分派一块内存,而对象的细致信息都存储在堆内存上,然后由栈上面的援用指向堆中对象的地点。
比方,有一个类Person,有属性name、age带有参的组织要领
Person p = new Person("zhangsan",20);
在内存中的细致竖立历程是:
1.起首在栈内存中为其p分派一块空间;
2.在堆内存中为Person对象分派一块空间,并为其三个属性设初值"",0;
3.依据类Person中对属性的定义,为该对象的两个属性举行赋值操纵;
4.挪用组织要领,为两个属性赋值为"Tom",20;(注重这个时刻p与Person对象之间还没有竖立联络);
5.将Person对象在堆内存中的地点,赋值给栈中的p,经由过程援用(句柄)p能够找到堆中对象的细致信息。
相干学问:
静态区: 保留自动全局变量和 static 变量(包含 static 全局和局部变量)。静态区的内容在全部顺序的生命周期内都存在,由编译器在编译的时刻分派。
堆区: 平常由顺序员分派开释,由 malloc 系列函数或 new 操纵符分派的内存,其生命周期由 free 或 delete 决议。在没有开释之前一向存在,直到顺序完毕,由OS开释。其特点是运用天真,空间比较大,但轻易失足。
栈区: 由编译器自动分派开释,保留局部变量,栈上的内容只在函数的局限内存在,当函数运转完毕,这些内容也会自动被烧毁,其特点是效率高,但空间大小有限。
笔墨常量区: 常量字符串就是放在这里的。 顺序完毕后由体系开释。
更多相干文章教程请接见:java编程入门
以上就是关于java中基础数据范例与援用数据范例的引见的细致内容,更多请关注ki4网别的相干文章!