一,Number

java.lang.Number 类是抽象类,用于表示各种数值类型的对象。它是 Java 中所有数值类型的包装类的超类。Number 类主要有以下几个特点和作用:
-
抽象类:
Number类是一个抽象类,不能直接实例化,但可以用作其他数值类型的基类。 -
超类:
Number类是整个数值类型包装类层次结构的超类。Java 中的所有数值包装类(Integer、Long、Float、Double、Byte和Short)都直接或间接继承自Number类。 -
提供常用方法:
Number类提供了一些抽象方法,用于获取不同数值类型的值,如doubleValue()、floatValue()、intValue()、longValue()等。这些方法允许将一个数值对象转换为对应的基本数据类型的值。 -
通用性:由于
Number类是各种数值包装类的超类,因此它可以作为一个通用的引用类型,用于存储各种数值类型的对象。这种通用性使得在需要处理不同数值类型的场景中更加灵活。 -
自动装箱与拆箱:在 Java 中,基本数据类型可以自动装箱为对应的包装类型,而包装类型也可以自动拆箱为对应的基本数据类型。因此,
Number类的子类(如Integer、Double等)可以与基本数据类型之间自由转换,提供了更方便的数值处理方式。
总之,Number 类在 Java 中扮演着重要的角色,它为处理不同数值类型提供了一种统一的接口,使得数值操作更加灵活和方便。
原文介绍

这里有说到请阅读官网文档


官方文档
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Number.html
我们得以看出Number还是有很多孩子的
AtomicInteger, AtomicLong, BigDecimal, BigInteger, Byte, Double, DoubleAccumulator, DoubleAdder, Float, Integer, Long, LongAccumulator, LongAdder, Short
接下来我来进行验证到底是真孩子还是假冒伪劣产品

果然,它的孩子还是挺多的。言归正传,开始介绍哈哈哈
二,Number的方法


当然,让我们从头开始逐个介绍java.lang.Number类中的方法。
-
byte byteValue()- 返回值类型:
byte - 方法说明:将
Number对象转换为byte类型的值。 - 用法示例:
Number num = 10; byte b = num.byteValue(); System.out.println(b); // 输出 10
- 返回值类型:
-
short shortValue()- 返回值类型:
short - 方法说明:将
Number对象转换为short类型的值。 - 用法示例:
Number num = 20; short s = num.shortValue(); System.out.println(s); // 输出 20
- 返回值类型:
-
int intValue()- 返回值类型:
int - 方法说明:将
Number对象转换为int类型的值。 - 用法示例:
Number num = 30; int i = num.intValue(); System.out.println(i); // 输出 30
- 返回值类型:
-
long longValue()- 返回值类型:
long - 方法说明:将
Number对象转换为long类型的值。 - 用法示例:
Number num = 40; long l = num.longValue(); System.out.println(l); // 输出 40
- 返回值类型:
-
float floatValue()- 返回值类型:
float - 方法说明:将
Number对象转换为float类型的值。 - 用法示例:
Number num = 50; float f = num.floatValue(); System.out.println(f); // 输出 50.0
- 返回值类型:
-
double doubleValue()- 返回值类型:
double - 方法说明:将
Number对象转换为double类型的值。 - 用法示例:
Number num = 60; double d = num.doubleValue(); System.out.println(d); // 输出 60.0
- 返回值类型:
这些方法允许在不同类型的数字之间进行转换,方便在程序中进行数字类型的操作和处理。请注意,Number类本身是抽象的,因此不能直接实例化,但可以通过其子类如Integer、Double等来实例化对象并使用这些方法。
其实讲到这里其实已经差不多了。父类定义好之后,子类可以进行重写或者使用父类的,这个我就不一一介绍是什么原因了,毕竟这个文章能看懂的也是Java工程师了,如果不懂得话后期我单独写一篇文章什么是继承(extends)和实现(implements)




![[WIP]Sora相关工作汇总VQGAN、MAGVIT、VideoPoet](https://img-blog.csdnimg.cn/direct/22aa1d0fcceb4c4081e72bd8d52d6907.png)














