什么更快:instanceof或isInstance?

art*_*spb 0 java jvm instanceof

除了设计问题,在现代JVM上执行速度更快的是什么?

foo instanceof Bar
Run Code Online (Sandbox Code Playgroud)

要么

Bar.class.isInstance(foo)
Run Code Online (Sandbox Code Playgroud)

为什么?

apa*_*gin 10

Class.isInstance是JVM内在的.它被编译到完全一样的instanceof做同样的序列(从热点源代码的证明:1,2).也就是说,它们在性能方面都是相同的.