Java为什么要对基本类型进行包装(装箱和拆箱)

2019-01-14  本文已影响0人  YouMyGod
direct.jpg

先来看下Java的两类类型:

Java 为每种基本类型提供了包装类:


问题来了:Java 为什么要有包装和解包装(装箱和拆箱)?

  1. 把一个基本类型包装成一个类,一个是可以使这个类型具有很多可以调用的方法。二个是Java向面像对象语言的靠近。其实Java还不算是很纯的面向对象的语言。真正的面向对象,是没有基本数据类型的。它只有一种类型,就是对象。三个是在泛型中,基本类型是不可以做泛型参数的。如:List <int> list = new ArrayList<int> ();这是不合法的。你只能这个样写List<Integer> list = new ArrayList<Integer> ();也就是要用int型的包装类类型来解决基本类型不可以做泛型参数的问题 。重要的是:包装类有更多的方法和用途, 而这是基本类型没有的

  2. 是Java早年设计缺陷。基础类型是数据,不是对象,也不是Object的子类。
    需要装箱才能和其他Object的子类共用同一个接口

上一篇下一篇

猜你喜欢

热点阅读