在instanceOf中添加额外的检查以检查java

时间:2013-10-27 11:04:00

标签: java instanceof

我有一种情况,我检查实例有些类继续我的逻辑。

例如。

if (obj instanceof X)
{
    result = true;
}

但现在我的遗留代码中的很多地方都在使用它。

我的问题是现在这个instanceOf只有在某个全局属性变量为true时才返回true。

我正在寻找替代所有这些instanceOf检查的替代解决方案,如下所示:

if (GLOBALPROPERTY == true)
{
    if (obj instanceof X)
    {
        result = true;
    }
}  

我是否可以在类X本身内部注入此检查,以便在我检查此类的实例时,它将返回false。

1 个答案:

答案 0 :(得分:1)

不,你不能。

我能想到的最接近的事情是使用AspectJ进行面向方面的编程。但这很棘手 - 你可能不得不首先从使用instanceof切换到使用正确的多态方法调用。

但实际上,您可能只需要进行搜索并替换整个代码库。