Java中为什么要引入包装类?

太过爱你忘了你带给我的痛 2023-02-26 08:25 190阅读 0赞

Java中为什么要引入包装类?

java中为8种基本数据类型又对应的准备了8种包装类
包装类是引用数据类型,父类是Object。

思考:为什么要再提供8中包装类呢?

假设有这样一个方法:它的形式参数是Object型
它能接收所有引用数据类型,因为Object类是所有类的父类,不能接受基本数据类型。
如果我想传一个int型数字进去,该怎么解决?


看下面一个例子:
测试代码:

  1. public class Test01 {
  2. //形式参数只接受引用类型
  3. public static void superPrint(Object obj) {
  4. System.out.println(obj.toString());
  5. }
  6. public static void main(String[] args) {
  7. int i = 100;
  8. //首先,你得把这个数字进行包装,让一个类带着它传进方法里面
  9. //实例化一个包装类,保存i的值
  10. MyInt myInt = new MyInt(i);
  11. Test01.superPrint(myInt);
  12. }
  13. }
  14. //自己写一个包装类,保存int数字的类
  15. class MyInt {
  16. //保存数的值
  17. private int value;
  18. //setter and getter
  19. public int getValue() {
  20. return value;
  21. }
  22. public void setValue(int value) {
  23. this.value = value;
  24. }
  25. //构造方法
  26. public MyInt() {
  27. }
  28. public MyInt(int value) {
  29. this.value = value;
  30. }
  31. //重写toString()方法
  32. @Override
  33. public String toString() {
  34. return "int型:" + String.valueOf(value);
  35. }
  36. }

这种包装类是自己写的
以后都不需要写,因为SUN公司已经提供了8种包装类
可以把8种基本数据类型 包装成 引用数据类型。


基本数据类型————包装类型—————————父类
byte——————————java.lang.Byte-—————Number
short—————————-java.lang.Short-————-Number
int———————————-java.lang.Integer-———Number
long——————————java.lang.Long-————-Number
float——————————java.lang.Float-————-Number
double————————-java.lang.Double-———Number
boolean———————-java.lang.Boolean-——-Object
char——————————java.lang.Character-—-Object


8种包装类名也好记
int的包装类是Integer
char的包装类是Character
其他的都是首字母大写变成类名

数字包装类的父类是Number。
Boolean和Character的父类是Object。


发表评论

表情:
评论列表 (有 0 条评论,190人围观)

还没有评论,来说两句吧...

相关阅读

    相关 包装为什么需要包装

    包装类是一种用于将基本数据类型(如整数、浮点数、字符等)封装成对象的类。在Java和许多其他编程语言中,基本数据类型是不具备面向对象特性的,它们不是对象,不能进行方法调用或参与

    相关 为什么引入springboot

    总结:Spring太笨重,类似maven整合了jar包,SpringBoot整合了所有的快捷,使得开发人员只需要几个配置就可以快速的搭建起来一套web项目合作一个微服务 原

    相关 为什么需要包装

    1、某些方法的参数必须是对象,为了让基本数据类型的数据能作为参数,提供包装类。 2、包装类还可以提供更多的功能 3、其他特别重要的功能:比如可以实现字符串和基本数据类型之间

    相关 Java为什么使用抽象

    抽象类  抽象类与接口紧密相关。然接口又比抽象类更抽象,这主要体现在它们的差别上:1)类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承,从抽象类派生的类仍可实现接

    相关 Java为什么使用内部

    一、前言 关于[Java][]的内部类,要说的东西实在太多,这篇博文中也无法一一具体说到,所以就挑些重点的讲。关于内部类的使用,你可能会疑问,为什么我们要使用内部类?为了回