integer可以被继承吗(class Pet extends HashMap<String,Integer>{.} 在java中可以这样继承容器 请解释下)

本文目录
- class Pet extends HashMap
{.} 在java中可以这样继承容器 请解释下 - java转型为什么可以把Object类型向下转型成其他类型却不能把long类型强制转换成integ
- Integer不是Object的子类吗
- 经典面试题:Integer类型 ==比较问题
class Pet extends HashMap{.} 在java中可以这样继承容器 请解释下
这个是可以的,java中最多能继承一个类,但是可以实现多个接口(Interface)
前题是被继承的类不是final修饰的,比如,你写个类去继承String类就不行,因为String类的申明是被final修饰的!
又如我们申明一个类
public final class Super{}
Super就不能被其他类所继承
public class Son extends Super{}//编译不会通过!
所以这样是不行的
java转型为什么可以把Object类型向下转型成其他类型却不能把long类型强制转换成integ
因为所有的类型都继承了Object类型,而Integer类型没有继承自Long,他们两个不存在继承关系。如果要是转换的话,先将Long转换成基本类型long,基本类型再强转为int,再封装成Integer。
Integer不是Object的子类吗
Integer是Object的子类,但是int不是
int不能为null, Integer可是null
int 与Integer可以由系统自己转换,称为 装箱: int》Integer
拆箱:Integer》int
经典面试题:Integer类型 ==比较问题
在聊到面试题之前,需要先搞清楚几个概念。
自动装箱是Java编译器在基本数据类型和对应的对象包装类型之间的一个转化。如int转化为Integer,long转化为Long等。而自动拆箱则相反,是对象包装类型转化成基本数据类型。
num 是Integer类型,而2是int类型,Integer与int并无继承关系,理论上应报错,但因为自动装箱机制存在,Java自动将int转化为Integer类型,即
valueOf()方法返回一个Integer类型值,并将其赋值给变量num。这就是int的自动装箱。
字节是存储容量的基本单位,字符是数字,字母,汉字以及其他语言的各种符号。 1 字节=8 个二进制单位:一个一个字符由一个字节或多个字节的二进制单位组成。
输出为false。
由于Integer变量是对Integer对象的引用,所以两个通过new生成的Integer对象永远是不相等的。
输出为true。
Integer变量与int比较时,只要值相等,则结果为true。因为包装类Integer与int比较时,会自动拆箱为int,然后进行比较,故而最后变成了两个int变量在比较。
输出为false。
非new生成的Integer变量和new Integer()生成的变量比较时,结果为false。因为非new生成的Integer变量指向的是java常量池中的对象,而new Integer()生成的变量指向的是堆中新建的对象,两者的内存地址不同。
第一个输出的是true,第二个是false。
两个非new出来的Integer对象,如果范围在-127~128之间,则为true,否则为false。
Integer g =100。通过自动装箱机制转化为Integer g = Integer.valueOf(100)。
Integer.valueOf()源码
IntegerCache的源码
整个工作过程就是:Integer.class在装载(Java虚拟机启动)时,其内部类型IntegerCache的static块即开始执行,实例化并暂存数值在-128到127之间的Integer类型对象。当自动装箱int型值在-128到127之间时,即直接返回IntegerCache中暂存的Integer类型对象。

更多文章:
如何用anaconda打开python3(怎样打开anacondapython)
2026年7月20日 14:00
linux修改ip配置文件(如何修改LINUX的IP地址、网关和主机名)
2026年2月9日 14:15
激光切割机电脑编程好学吗(学习激光打标机和激光切割机 要学习什么)
2025年12月27日 04:45
怎样制作模板 教程(ppt模板的设计-如何制作ppt模板教程)
2026年7月25日 12:15
findfirstfile函数(FindFirstFile查找文件,使用通配符问题)
2026年1月6日 13:45
responsibility缩写(csr是什么意思 对企业有什么意义)
2026年5月8日 21:45
eclipse安装失败 show log(eclipse安装出现错误日志)
2025年7月11日 03:15
vlookup函数不是首列(excel vlookup 第一参数不在第一列 怎么办急)
2026年7月23日 02:00
fopen的文件名(c语言中,fopen(“文件名”,“打开方式”)中的文件名可以是变量吗谢谢)
2026年5月5日 07:30
rtos是什么意思?在学习freertos之前,应学习哪些东西
2025年10月10日 08:00
多文件同时md5(如何用java或者c#写个扫描整个文件夹及子文件夹,验证多个文件的md5值,并将md5值重复但不同)
2026年7月14日 03:45
kafka rocketmq区别(Kafka还是RabbitMQ)
2026年2月20日 09:15











