阿里Java学习路线:阶段 1:Java语言基础-Java面向对象编程:第19章:包装类:课时85:包装类实现原理分析

包装类的主要功能是针对于基本数据类型的对象转换而实现的,并且随着JDK版本的更新,包装类的功能也在发生着改变,有着更多的支持。

认识包装类

Object类最大的特点是所有类的父类,并且可以接收所有的数据类型,但是在这个过程之中就存在有个问题:基本数据类型并不是一个类,所以现在如果要想将基本数据类型以类的形式进行处理,那么就需要对其进行包装。
范例:以int数据为例实现一个包装处理的定义

class Int {
	private int data ; // 包装了一个基本数据类型
	public Int(int data) {
		this.data = data ;
	}
	public int intValue() {
		return this.data ;
	}
}
public class JavaDemo {
	public static void main(String args[]) {
		Object obj = new Int(10) ; // 装箱:将基本数据类型保存在包装类之中
		int x = ((Int)obj).intValue() ; // 拆箱:从包装类对象中获取基本数据类型
		System.out.println(x * 2) ;
	}
}

基本数据类型进行包装处理后可以像对象一样进行引用传递,同时也可以使用Object类来进行接收,但是如果我们都已经可以发现基本数据类型与Object类型之间的缺陷,那么JDK也早就发现了同样的问题,所以JDK1.0的时候就提供有了包装类的概念,基本数据类型一共有八种,所以提供有八种包装类,那么这个八种包装类的基本定义如下。
在这里插入图片描述
现在可以发现在Java中包装类一共提供有两种类型:
1.对象型包装类(Object直接子类):Boolean、Character;
2.数值型的包装类(Number直接子类):Byte、Short、Integer、Long、Float、Double;
Number是一个抽象类,以后只要是看见了Number都应该明确的表示它是一个数字的概念,这个类定义有如下方法:

No. 方法名称 类型 描述
01 public byte byteValue() 普通 从包装类中获取byte数据
02 public short shortValue() 普通 从包装类中获取short数据
03 public abstract int intValue() 普通 从包装类中获取int数据
04 public abstract long longValue() 普通 从包装类中获取long数据
05 public abstract float floatValue() 普通 从包装类中获取float数据
06 public abstract double doubleValue() 普通 从包装类中获取double 数据

Number类中的方法就是直接提供有获取包装类中基本数据类型的功能,一共只定义有六个方法。

展开阅读全文
©️2020 CSDN 皮肤主题: 像素格子 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值