文章目录
1. 基本类型和引用类型的区别
Java中的数据类型分为两大类,基本数据类型和引用类型
1.1 基本数据类型
基本数据类型有八种类型,大致按照如下分类
①整数类型:long、int、short、byte
②浮点类型:float、double
③字符类型:char
④布尔类型:boolean
数据类型 | 位数 | 范围 | 默认值 |
---|---|---|---|
byte(字节型) | 8 | -128(-27)~127(27 - 1) | 0 |
short(短整型) | 16 | -32768(-215)~32767(215 - 1) | 0 |
int(整型) | 32 | -2147483648(-231)~2147483647(231 - 1) | 0 |
long(长整型) | 64 | -9223372036854775808(-263)~9223372036854775807(263 - 1) | 0L |
float(单精度) | 32 | -3.4E38~3.4E38 | 0.0f |
double(双精度) | 64 | -1.7E308~1.7E308 | 0.0d |
char(字符) | 16 | \u0000(十进制等效值为 0)~\uffff(即为 65535) | ‘\u0000’ |
boolean(布尔) | 8 | true或false | false |
注:1字节等于8位,即1byte(字节)= 8bit(位)
1.2 引用类型
- 引用类型有很多像类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
- 在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
- 对象、数组都是引用数据类型。
- 所有引用类型的默认值都是null。
- 一个引用变量可以用来引用任何与之兼容的类型。
- 例子:String str = new String(“hello world”)。
注:在Java中,基本类型都有对应的封装类:
数据类型 | 封装类 |
---|---|
byte | Byte |
short | Short |
long | Long |
int | Integer |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
这样用的原因跟泛型必须包容的是引用类型有关,然后咱们经常用的集合List、Set有些使用到了泛型,还有一个很重要的点就是像int默认值是0,Integer默认值是null,咱们可以通过这一点去判断是否有输入数据,因为在数据库里null是不会显示值的,当然你也可以做多一步逻辑判断。
1.3 区别
2. 序列化原理
序列化相关可以看我另一篇:Java序列化和反序列化