码迷,mamicode.com
首页 > 其他好文 > 详细

基本数据类型和应用数据类型的区别

时间:2020-09-17 23:55:51      阅读:50      评论:0      收藏:0      [点我收藏+]

标签:lse   运行时   形式   自动变量   运行   数组   OLE   事先   除了   

java的数据类型分两大类:

基本数据类型

基本类型是通过诸如 int a = 5; long b = 6L;的形式来定义的,称为自动变量,自动变量存放的是字面值,不是类的实例,它存放在内存的堆栈中,数据大小和生存期必须是确定的,存取速度比较快,在堆栈中的字面值可以共享,也就是说我们定义一个int a = 5;然后又定义了一个int b = 5;这时a与b在内存中指向的是同一个字面常量。

四类八种

四类:整形、浮点型、布尔型、字符型

八种:

  • 整数型 (取值范围)
    • 字节型byte(1个字节)(-128~127) 短整型short(2个字节)(-32768~32767) 整形int(4个字节)(一般默认)(-21亿~21亿) 长整型long(8个字节)( )
  • 浮点型
    • float(单精度浮点数) (4个字节) double(双精度浮点数)(8个字节)(一般默认)
  • 字符型
    • char(字符型)(2个字节)
  • 布尔型
    • boolean(1个字节)(只有两个结果true或者false)

8种基本类型在java中都有对应的封装类型,也就是引用类型:
整数类型 Byte、Short、Integer(-128~127)、Long
浮点数类型 Float、Double
字符型 Character
布尔类型 Boolean

在参数传递时,基本类型都是传值,也就是传递的都是原变量的值得拷贝,改变这个值不会改变原变量

引用数据类型

除了基本数据就是引用数据类型

基本数据类型加上[] 就变成引用数据类型

类、接口、数组

引用类型一般是通过new关键字来创建,比如Integer num = new Integer(3);它存放在内存的堆中,可以在运行时动态的分配内存大小,生存期也不必事先告诉编译器,当引用类型变量不被使用时,Java内部的垃圾回收器GC会自动回收走。引用变量中存放的不是变量的内容,而是存放变量内容的地址。

引用类型传递的是地址,也就是参数与原变量指向的是同一个地址,所以如果改变参数的值,原变量的值也会改变

基本数据类型和应用数据类型的区别

标签:lse   运行时   形式   自动变量   运行   数组   OLE   事先   除了   

原文地址:https://www.cnblogs.com/anke-z/p/13661008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!