今天在学习myBatis的时候,发现一个属性为Long类型,而我写成了long类型。
我当时心想,这不一样的吗?
想想不太对劲,然后查找资料,发现了端倪。
在java中数据类型是有两种的,
一种是基本类型,一种是对象类型,
基本类型:
long,int ,byte,double,float,char
对象类型:
Long,Integer,Byte,Float,Double,Char,String,还有一些其他java提供的,或者是你自己创建的类。
而我弄错的这个,Long其实是long的一个包装类。
这里就又引入了一个概念,什么叫做包装类?
大家都知道java是一门面向对象的语言,但是这些基本类型是没有“对象”属性的,他们没有对象和成员方法。
那怎么办呢?
于是java为每种数据类型设计了对应的包装类。
这样就可以对基本数据类型进行一些对象的操作。
而现在的java已经实现了自动装箱和自动拆箱的操作,具体的可以看这篇文章: