美文网首页
Java为什么要对基本类型进行包装(装箱和拆箱)

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

作者: YouMyGod | 来源:发表于2019-01-14 14:32 被阅读0次
    direct.jpg

    先来看下Java的两类类型:

    • 基本数据类型,分为boolean、byte、int、char、long、short、double、float;
    • 引用数据类型 ,分为数组、类、接口。

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

    • 基本数据类型: boolean,char,byte,short,int,long,float,double
    • 封装类类型:Boolean,Character,Byte,Short,Integer,Long,Float,Double

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

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

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

    相关文章

      网友评论

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

          本文链接:https://www.haomeiwen.com/subject/nigddqtx.html