By "Magic" I mean the methods which have semantics which are not expressed in pure Java.
I know all native
methods are magic, in that their implementation is provided by the underlying runtime and not by Java bytecodes.
Is the reverse true? Are all magic methods native
, or are there some magic methods apparently implemented in pure Java, but with some extra help from some JVM-special-casing?
The use case is that I want to modify the semantics of Java by instrumenting its bytecodes. All these magic methods are special cases which I will have to handle some way or another. The native
ones are all obvious, but I was wondering if there are any unmarked magic methods I have to watch out and special case for.