Java中创建数组时会调用Object构造函数吗?
-
19-08-2019 - |
题
在 Java 中,数组是一个对象。我的问题是...创建新数组时是否调用对象构造函数?我们想利用这个事实来使用一些额外的字节码来检测对象构造函数,以检查正在构造的数组的长度。那行得通吗?
其他提示
每 JVM规范 :“阵列的创建和使用一组不同的指令进行操作。”因此,尽管阵列是对象的实例,它们不被初始化相同的方式,其它的目的是:(它可以看到如果从链接锚向上滚动)。
我不这么认为,因为你不能获得本地阵列overridethe构造
可以使用字节码操作以放置在以往任何时候创建一个新的数组的检查。
不。我发现这个AspectJ的邮件列表: HTTP://dev.eclipse .ORG / mhonarc /列表/ AspectJ的用户/ msg02975.html 。
您可能问的一个原因数组,但是如果可以的话,为什么不切换到集合类。这会给你很多机会来拦截并做验证。
不隶属于 StackOverflow