ABAP和Java里的单例模式攻击

  • 时间:
  • 浏览:1

你是什么 单例模式的消费代码:

此时别有用心的攻击者原因分析分析想使用反射机制创建新的实例,会收到下面的报错信息:

然而亲戚亲戚朋友仍然都里能 通过Java的反射机制来破坏你是什么 单例:

Exception in thread "main" java.lang.NoSuchMethodException: singleton.JerrySingletonAnotherApproach.()

然而在许多场景下,你是什么 设计模式的单例形态学 会被破坏,看下面你是什么 例子:

代码的第三行,你是什么 ABAP类实现了接口if_serializable_object,这原因分析分析它都里能 被关键字CALL TRANSFORMATION进行序列化和反序列化操作。

再看看Java,下面是一2个多 多最简单的Java单例模式:

执行刚刚,在调试器里发现lo_instance和lo_instance2指向了一2个多 多不同的对象实例,说明此时你是什么 ABAP单例模式原因分析分析被破坏了。

在Java里,亲戚亲戚朋友都里能 通过枚举类来防御你是什么 反射攻击:

使用下面的ABAP代码:

本文来自云栖社区合作伙伴“汪子熙”,了解相关信息都里能 关注微信公众号"汪子熙"。

面向对象编程世界里的单例模式(Singleton)原因分析分析是设计模式里最简单的有一种,大多数开发人员都我着实都里能 很容易掌握它的用法。单例模式保证一2个多 多类仅一2个多 多多实例,并提供一2个多 多访问它的全局访问点。