Number源码分析
一.概述
Number是一个抽象类,表示数值,它是所有表示数值的类的超类。Byte、Double、Float、Integer、Long、Short都继承该类。Number类一共只有6个方法,这些方法用来是实现不同数值类型的转换。
Number.java中的相关代码:
public abstract class Number implements java.io.Serializable {
…
}
1.Number是一个抽象类。
2.实现了java.io.Serializable,可以进行序列化。
二.源码分析
1.全局变量
Number.java中的相关代码:
// 用于序列化
private static final long serialVersionUID = -8742448824652078965L;
2. intValue方法
用于返回一个int型数值。
Number.java中的相关代码:
public abstract int intValue();
3. longValue方法
用于返回一个long型数值。
Number.java中的相关代码:
public abstract long longValue();
4. floatValue方法
用于返回一个float型的数值。
Number.java中的相关代码:
public abstract float floatValue();
5. doubleValue方法
用于返回一个double型的数值。
Number.java中的相关代码:
public abstract double doubleValue();
6. byteValue方法
用于返回一个byte型的数值。
Number.java中的相关代码:
public byte byteValue() {
// 通过intValue方法实现,
// 对intValue的返回结果进行类型转换,并返回
return (byte)intValue();
}
7. shortValue方法
用于返回一个short型的数值。
Number.java中的相关代码:
public short shortValue() {
// 通过intValue方法实现,
// 对intValue的返回结果进行类型转换,并返回
return (short)intValue();
}