动力节点首页 全国咨询热线:400-8080-105

绑定手机号,登录
手机号

验证码

微信登录
手机号登录
手机号

验证码

30天自动登录
微信登录与注册
微信扫码登录与注册

扫码关注微信公众号完成登录与注册
手机号登录
首页 > 文章

什么是Java包装类

05-31 10:53 339浏览
举报 T字号
  • 大字
  • 中字
  • 小字

我们知道 Java 语言是一个面向对象的编程语言,但是 Java 中的基本数据类型却不是面向对象的,但是我们在实际使用中经常需要将基本数据类型转换成对象,便于操作,比如,集合的操作中,这时,我们就需要将基本类型数据转化成对象,于是就出现了包装类。

包装类,顾名思义就是将什么经过包装的类,那么是将什么包装起来的呢,显然这里是将基本类型包装起来的类。包装类的作用就是将基本类型转成对象,将基本类型作为对象来处理。

这样,我们先自己实现一个简单的包装类,以包装基本类型 int 为例:

// 包装类 MyInt
public class MyInt {
    private int number; // 基本数据类型
    
    public Int (int number){ // 构造函数,传入基本数据类型
        this.number = number;
    }
    
    public int intValue(){ // 取得包装类中的数据
        return this.number;
    }
}

测试一下这个包装类:

public static void main(String[] args) {
    MyInt temp = new Int(100); // 100 是基本数据类型, 将基本数据类型包装后成为对象
    int result = temp.intValue(); // 从对象中取得基本数据类型
    System.out.println(result);
}

在 Java 中,万物皆对象,所有的操作都要求用对象的形式进行描述。但是 Java 中除了对象(引用类型)还有八大基本类型,它们不是对象。那么,为了把基本类型转换成对象,最简单的做法就是将基本类型作为一个类的属性保存起来,也就是把基本数据类型包装一下,这也就是包装类的由来。包装类就是基本类型名称首字母大写。但Integer 和 Character 例外,它们显示全称,如下面表格所示:

通过阅读 Java8 的 API 官方文档或者看源代码我们可以得知8个包装类的继承关系如下:

通过以上的继承关系图,我们其实可以这样记忆,包装类里面有6个与数字相关的都是继承自 Number 类,而其余两个不是与数字相关的都是默认继承 Object 类。通过看 API 官方文档,我们还可以得知这8个包装类都实现了Serializable , Comparable 接口。比如下图的 Integer 类

public final class Integer extends Number implements Comparable<Integer> {}

从上面的代码我们看出:包装类被 final 修饰,也就是说 Java 内置的包装类是无法被继承的。

看到这里,相信大家已经弄懂了什么是Java包装类了,Java包装类在Java中有很多方面的应用,想学习的小伙伴可以到动力节点在线的免费视频课程学习。

0人推荐
共同学习,写下你的评论
0条评论
代码小兵498
程序员代码小兵498

153篇文章贡献528999字

相关课程 更多>

作者相关文章更多>

推荐相关文章更多>

Java面试题及答案整理

代码小兵66904-21 20:01

6道经典算法面试题

杨晶珍05-12 16:39

简述Spring MVC的核心组件

代码小兵49806-11 16:26

SpringMVC 中的组件

代码小兵49806-11 16:28

Spring常见面试题

代码小兵92504-17 16:07

发评论

举报

0/150

取消