测试题(二)

11 equals 与 hashCode

equals 比较内容是否相同。

如果 equals 相同,hashCode 必须相同;否则哈希表结构(如 HashMap)会错误定位桶位。

重写 equals 时必须重写 hashCode。

12 值传递与引用传递(Java 是值传递)

Java 所有参数都是值传递。

基本类型传值拷贝;引用类型传地址拷贝,因此可以修改对象内容,但不能让外部引用指向新对象。

13 类初始化顺序

加载顺序:父类静态 → 子类静态 → 父类实例 → 父类构造 → 子类实例 → 子类构造。

始终从父类开始,保证结构完整。

14 本地方法栈

用于执行 Native 方法,存放局部变量、操作数等。

Native 方法用于调用底层 C/C++ 库或系统 API。

15 双亲委派机制

类加载时先交给父类加载器,如果父类无法加载,再由子类加载器处理。

目的:保证核心类库不被替换,避免重复加载。

16 重写与重载

重写发生在父类子类之间,方法签名一致,是多态。

重载发生在同一个类中,方法名相同但参数不同,用于功能增强。

17 super 必须在构造器第一句

构造器第一句必须是 super(...),否则编译报错。

如果不写,系统会自动插入 super() 调用父类无参构造。

18 instanceof

判断对象是否属于某类或其子类,用于类型检查与安全强转。

19 强制类型转换

基本类型强转会丢失精度(double 转 int)。

引用类型必须有父子关系才能强转,否则抛出 ClassCastException。

20 synchronized 可重入锁

同一个线程可以重复获得同一把锁,不会造成死锁。

JVM 用锁计数器实现重入机制。

相关推荐
Lsir10110_12 小时前
从按钮“点不动“讲起——深入理解 Qt 信号槽机制
开发语言·qt·信号处理
君科程序定做12 小时前
用 IDL 处理高分一号(GF-1 / GF-1B/C/D)数据
c语言·开发语言
敲代码的嘎仔12 小时前
用 Redis 合并写 + DelayQueue 延迟检测,把视频播放进度写库频率降到 1/60
java·开发语言·数据库·redis·缓存·音视频·高并发
代码中介商13 小时前
C++ 预约系统实战(一):项目总览与 C/S 架构设计
c语言·开发语言·c++
youyou-060613 小时前
AUTOSAR‑COM 常见问题 QA (1)
java·linux·服务器·单片机·汽车
谢亮_vipxieliang13 小时前
ValidX时间段验证详解:ISO 8601标准与简化格式
java·spring boot·后端·spring·spring cloud·hibernate
Lsetea13 小时前
Java 请求 HTTPS 报 PKIX path building failed:从证书链到 truststore 的完整排查
java·https·ssl证书·keytool·truststore
我叫汪枫13 小时前
RAG 进阶:切分、检索、重排序,以及它和 Agent、微调、MCP 都是什么关系
开发语言·python
弘毅 失败的 mian13 小时前
数组和指针基础
c语言·开发语言·经验分享·笔记
ai小陈13 小时前
Python 3.12与CUDA 12.8镜像实战:启动GPU实例后的五项自检
开发语言·人工智能·python·深度学习·ai·gpu算力