枚举单例外部类反射攻击问题

来源:5-6 无视反射和序列化攻击的单例

后端Bug开发工程师

2021-06-16

http://img.mukewang.com/szimg/60c99af509cb6bbb10100275.jpg

http://img.mukewang.com/szimg/60c99b150914d90809780325.jpg

老师 你这个使用枚举和没使用枚举的单例打印不一致啊

http://img.mukewang.com/szimg/60c99b63099cc97012360744.jpg

打印结果

http://img.mukewang.com/szimg/60c99b7b0900dc8c09130280.jpg

如果都用枚举这种方式,使用反射调用getInstance方法的话  打印结果都一致啊

写回答

1回答

翔仔

2021-06-18

同学好,这个是符合预期的呀,请问是有什么问题呀,枚举获取到的里面的实例都一致,证明单例是有效的

0
3
慕仙zwynb
回复
翔仔
谢谢 翔仔老师 明白了,是我理解的角度错了给予枚举包裹的单例其外围也是可以被反射破坏的,因为无法使用反射调用枚举的构造函数,所以才说枚举里面的实例是惟一的(类加载实例化时候new出来的)
2021-11-30
共3条回复

剑指Java自研框架,决胜Spring源码

快速入门Spring核心源码+从零开发自研框架

1498 学习 · 495 问题

查看课程