24
在Java中使用instanceof的性能影响
我正在开发一个应用程序,一种设计方法涉及大量使用instanceof操作员。虽然我知道OO设计通常会尝试避免使用instanceof,但这是另一回事了,这个问题与性能完全相关。我想知道是否会对性能产生影响?是一样快==吗? 例如,我有一个包含10个子类的基类。在采用基类的单个函数中,我检查该类是否为子类的实例并执行一些例程。 我想解决的另一种方法是改用“类型id”整数基元,并使用位掩码表示子类的类别,然后将子类“类型id”与位掩码进行位掩码比较。代表类别的常量掩码。 instanceofJVM 是否以某种方式对其进行了优化,使其速度更快?我想坚持使用Java,但应用程序的性能至关重要。如果以前曾走过这条路的人可以提供一些建议,那将很酷。我是否挑剔或专注于错误的东西进行优化?