instanceof运算符会产生很多开销吗?为什么?
问题内容:
在我的项目中,我的一个同事非常反对使用instanceof
运算符,因为它“会产生大量开销”,这是什么原因呢?是真的吗
还有另一种方法可以检查对象的类型而不使用它?
因为我发现它在某些情况下非常有用。
问题答案:
确实产生一些开销,再加上后续的转换。使用最新版本的Java,开销已减少。但是无论如何,这都是微优化-也就是说,在一般情况下,您不必为此担心。
真正的反对意见instanceof
是,在许多情况下,有更好的OOP方法可以实现所需的行为。