包装类知识总结

包装( Wrapper )类,也叫封装类。
包装类不止一个,它是 Java 针对 8 种基本数据类型提供的 类类型 ,它们对基本数据类型做了包装。
基本类型:byte、 short、 int、 long 、float 、double、 char 、boolean 
包装类:Byte、 Short 、Integer、 Long 、Float、 Double、 Character、 Boolean
除了 int char 的包装类命名比较特殊(单词的全写)外,其他基本数据类型的 包装类直接是首字
母大写。
在面向对象编程里,对象是核心,讲究万事万物皆对象。通过类创建出来对象之后,可以访问对象
的方 法、对象的属性、方法可以重载、可以重写、类还有封装、继承、多态等特性,相比基本数
据类型,类 更加强大,基本数据类型的功能显得相对单薄。
对基本数据类型的封装,就是我们所谓的包装,对应的类就是包装类。
可以把对基本数据类型的操作封装成一个一个方法,比如:在 Integer 类中,可以封装一个 int byte
的 方法,封装一个int short 的方法,求 2 个数的最大值, int 转字符串等等方法,也可以将 int 的最
大值、 最小值定义成静态常量。
包装类
包装类实际上是扩展了基本数据类型的功能,对基本数据类型进行了 功能上的封装。
由于系统已经定义好了 8 种基本数据类型的包装类,我们无需自己定义,直接使用即可。
基本类型:byte、 short、 int、 long 、float 、double、 char 、boolean 
包装类:Byte、 Short 、Integer、 Long 、Float、 Double、 Character、 Boolean
父类: byte、 short、 int、 long 、float 、double 的父类都是     Number。
           Byte、 Short 、Integer、 Long 、Float、 Double 的父类是   Number。
           char 、boolean   的父类是   object。
            Character、 Boolean  的父类是   object。
抽象类:抽象类不能创建对象。 抽象类中往往会定义抽象方法,抽象方法由子类实现。
Number
Number 类是 Byte Short Integer Long Float Double 的父类。它是一个抽象类,内部定义了
一 些抽象方法,这些抽象方法由子类负责实现。
Byte
Byte byte 的包装类,是对 byte 的封装。 Byte 类继承于 Number 类,因此要实现 Number 类中所有的
抽 象方法。
Short
Short short 的包装类,是对 short 的封装。 Short 类继承于 Number 类,因此要实现 Number 类中所
有的抽象方法。
Integer
Integer int 的包装类,是对 int 的封装。 Integer 类继承于 Number 类,因此要实现 Number 类中所有
的抽象方法。
Long
Long long 的包装类,是对 long 的封装。 Long 类继承于 Number 类,因此要实现 Number 类中所有
的抽象方法。
 
Float
Float float 的包装类,是对 float 的封装。 Float 类继承于 Number 类,因此要实现 Number 类中所有
的抽象方法。
Double
Double double 的包装类,是对 double 的封装。 Double 类继承于 Number 类,因此要实现 Number
类 中所有的抽象方法。
Character
Character char 的包装类,是对 char 的封装。 Character 类继承于 Object 类。
Boolean
Boolean boolean 的包装类,是对 boolean 的封装。 Boolean 类继承于 Object 类。

包装类与基本数据类型之间的转换

案例: 

将基本数据类型转换为对象类型(包装类)。
public static void main(String[] args) {

int num = 100; //基本数据类型转换成包装类 

Integer i = new Integer(num); method(i); 

}

public static void method(Object obj) {

System.out.println(obj); 

} 

}
将对象类型(包装类)转换为基本数据类型。
public static void main(String[] args) { 

Integer x = new Integer(100); //包装类转成基本数据类型 

int xx = x.intValue();

int y = 200; 

int z = xx + y;

System.out.println(z);

} 

}
基本数据类型转包装类
构造方法() //基本数据类型转包装类
static 包装类 valueOf(基本数据类型) //基本数据类型转包装类
包装类转基本数据类型
public 基本数据类型 xxxValue() //包装类转换为基本数据类型

自动装箱和自动拆箱 

包装类和基本数据类型的转换,由系统自动进行 我们无需编写任何转换代码。
自动装箱:基本数据类型 转换到 包装类由系统自动进行。
自动拆箱:包装类 转换到 基本数据类型由系统自动进行。
基本数据类型转包装类用的比较多(自动装箱)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/921875.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

神经网络(系统性学习一):入门篇——简介、发展历程、应用领域、基本概念、超参数调优、网络类型分类

相关文章: 神经网络中常用的激活函数 神经网络简介 神经网络(Neural Networks)是受生物神经系统启发而设计的数学模型,用于模拟人类大脑处理信息的方式。它由大量的节点(或称为“神经元”)组成&#xff0…

shell 基础知识2 ---条件测试

目录 一、条件测试的基本语法 二、文件测试表达式 三、字符串测试表达式 四、整数测试表达式 五、逻辑操作符 六、实验 为了能够正确处理 Shell 程序运行过程中遇到的各种情况, Linux Shell 提供了一组测试运算符。 通过这些运算符,Shell 程序能够…

数据指标与标签在数据分析中的关系与应用

导读:分享数据指标体系的文章很多,但讲数据标签的文章很少。实际上,标签和指标一样,是数据分析的左膀右臂,两者同样重要。实际上,很多人分析不深入,就是因为缺少对标签的应用。今天系统的讲解下…

Flutter-Web首次加载时添加动画

前言 现在web上线后首次加载会很慢&#xff0c;要5秒以上&#xff0c;并且在加载的过程中界面是白屏。因此想在白屏的时候放一个加载动画 实现步骤 1.找到web/index.html文件 2.添加以下<style>标签内容到<head>标签中 <style>.loading {display: flex;…

51单片机基础 06 串口通信与串口中断

目录 一、串口通信 二、串口协议 三、原理图 四、串口通信配置参数 1、常用的串行口工作方式1 2、数据发送 3、数据接收 4、波特率计算 5、轮询接收 6、中断接收 一、串口通信 串口通信是一种常见的数据传输方式&#xff0c;广泛用于计算机与外部设备或嵌入式系统之间…

【深度学习之回归预测篇】 深度极限学习机DELM多特征回归拟合预测(Matlab源代码)

深度极限学习机 (DELM) 作为一种新型的深度学习算法&#xff0c;凭借其独特的结构和训练方式&#xff0c;在诸多领域展现出优异的性能。本文将重点探讨DELM在多输入单输出 (MISO) 场景下的应用&#xff0c;深入分析其算法原理、性能特点以及未来发展前景。 1、 DELM算法原理及其…

动态规划子数组系列一>最长湍流子数组

1.题目&#xff1a; 解析&#xff1a; 代码&#xff1a; public int maxTurbulenceSize(int[] arr) {int n arr.length;int[] f new int[n];int[] g new int[n];for(int i 0; i < n; i)f[i] g[i] 1;int ret 1;for(int i 1; i < n-1; i,m. l.kmddsfsdafsd){int…

RabbitMQ3:Java客户端快速入门

欢迎来到“雪碧聊技术”CSDN博客&#xff01; 在这里&#xff0c;您将踏入一个专注于Java开发技术的知识殿堂。无论您是Java编程的初学者&#xff0c;还是具有一定经验的开发者&#xff0c;相信我的博客都能为您提供宝贵的学习资源和实用技巧。作为您的技术向导&#xff0c;我将…

【mongodb】社区版8:改变配置bindip和授权

更改配置 sudo systemctl restart mongod (base) root@k8s-master-pfsrv:/home/zhangbin# sudo tail -n 20 /var/log/mongodb/mongod.log 日志感觉是成功了:{"t":{"$date":"2024-11-19T19:57:47.076+08:00"

element dialog 2层弹窗数据同步问题

注意&#xff1a;本帖为公开技术贴&#xff0c;不得用做任何商业用途 element dialog 2层弹窗数据同步问题 如果嵌套dialog&#xff0c;也就是多层dialog嵌套 2个input&#xff0c;key用同样的值 会导致内外2层dialog&#xff0c;用相同key值的input会数据同步 原因如下&a…

C# 属性 学习理解记录

字段和属性 左边字段&#xff0c;右边属性 拓展&#xff0c;属性安全&#xff1a; 1、设置public private 和protected 等&#xff0c;只读&#xff0c;只写&#xff0c; 2、在get set 方法时&#xff0c;验证&#xff0c;异常时抛出错误

如何提取某站 MV 视频中的音乐为 MP3 音频

我们常常会遇到需要将视频中的音频提取出来并转换为 MP3 格式的情况&#xff0c;比如想要单独保存一段视频中的精彩音乐、演讲或旁白。简鹿视频格式转换器就是一款能够轻松实现这一需求的实用软件&#xff0c;它支持 Windows 和 Mac 系统&#xff0c;为不同操作系统的用户提供了…

SQLynx让数据库变得简单!

SQLynx让数据库管理和开发变得更简单&#xff0c;SQLynx是一款旨在简化飞客使用体验的创新型工具&#xff0c;它为数据库管理者、数据库分析师和开发人员提供了一个直观、易用、高效的平台&#xff0c;首先&#xff0c;SQLynx拥有直观友好的用户界面。无论您是新建还是导表&…

stm32f10x_tim.h(函数学习自用)

stm32f10x_tim.h 函数库 void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct); //时基单元配置void TIM_OC1Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct); void TIM_OC2Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDe…

Centos Stream 9安装Jenkins-2.485 构建自动化项目步骤

官网&#xff1a;https://www.jenkins.io/ 1 下载 环境准备&#xff1a; 版本支持查询&#xff1a;https://pkg.jenkins.io/redhat-stable/ 安装JDK17&#xff1a;https://blog.csdn.net/qq_44870331/article/details/140784297 yum -y install epel-release wget upgradew…

ubuntu修改成静态ip

先用ifconfg查询网卡名称 例如以下的是enp10s0 enp10s0: flags4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.100.159 netmask 255.255.255.0 broadcast 192.168.100.255inet6 fe80::127c:61ff:fe4c:ab6b prefixlen 64 scopeid 0x20<link>ether…

Canvas 前端艺术家

目前各种数据来看&#xff0c;前端未来在 数据可视化 和 AI 这两个领域会比较香&#xff0c;而 Canvas 是 数据可视化 在前端方面的基础技术。所以给大家唠唠Canvas这个魔幻工具。 Canvas 介绍 Canvas 中文名叫 “画布”&#xff0c;是 HTML5 新增的一个标签。Canvas 允许开发…

WEB攻防-通用漏洞文件上传二次渲染.htaccess变异免杀

知识点&#xff1a; 1、文件上传-二次渲染 2、文件上传-简单免杀变异 3、文件上传-.htaccess妙用 4、文件上传-PHP语言特性 1、上传后门时&#xff0c;文件内容带.就不行 这时可以上传一个转换后的ip地址&#xff0c;ip地址对应网站包含后门代码 转换后的int会在访问的时候…

Linux驱动开发(9):pinctrl子系统和gpio子系统--led实验

在前面章节&#xff0c;我们有过使用寄存器去编写字符设备的经历了。这种直接在驱动代码中&#xff0c; 通过寄存器映射来对外设进行使用的编程方式&#xff0c;从驱动开发者的角度可以说是灾难。 因为每当芯片的寄存器发生了改动&#xff0c;那么底层的驱动几乎得重写。 那么…

Element-Ui组件(icon组件)

一、前言 本篇文章主要是对官网的Icon组件进行总结归纳Icon 图标 | Element Plus 在现代Web应用开发中&#xff0c;图标是用户界面设计中不可或缺的一部分。它们不仅提升了用户体验&#xff0c;还使得信息的传达更加直观和高效。本文主要对Element Plus 官方提供的Icon组件进行…