引用类型和原始类型的对比(java)

Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。另外,Java 还为每个原始类型提供了封装类(Wrapper)。

 

原始类型 封装类
=================
boolean Boolean
char    Character
byte    Byte
short   Short
int     Integer
long    Long
float   Float
double  Double

 

int i = 5;                       // 原始类型
Integer j = new Integer(10);     // 对象引用

                                 //java 1.5以后支持自动装箱所以

                                   Integer j = 10; 也可以

 

 

使用原始类型无须调用 new,也无须创建对象。这节省了时间和空间。混合使用原始类型和对象也可能导致与赋值有关的意外结果。

 

原始类型是类

引用类型是对象

 

原始类型大小比较用"=="

引用类型大小比较用"equals"

 

引用类型可以被序列化,原始类型不行。
引用类型提供的方法可以灵活转换,可以扩展,原始类型不行
在集合类中只能使用引用类型,不能使用原始类型
原始类型没有null的概念,引用类型有,某些情况下需要辨别某个参数是否被初始化了,如果使用原始类型,那么0的值不知道是初始值还是没有初始化系统自动给的。
有些时候必须要用封装类,比如你要用
request.setAttribute(String key ,Object value);这个方法时,第二个参数为Object类型 ,而你要放的是一个整数的时候,那就只能放Integer不能放int。

--摘自《无尽空虚的博客http://blog.sina.com.cn/lonely2009 》

posted @ 2015-03-23 16:56  米兰_跳跳虎  阅读(531)  评论(0编辑  收藏  举报