There's no valid reason to test ``++this++`` with ``++is++``. The only plausible explanation for such a test is that you're executing code in a parent class conditionally based on the kind of child class ``++this++`` is. But code that's specific to a child class should be _in_ that child class, not in the parent. == Noncompliant Code Example ---- public class JunkFood { public void DoSomething() { if (this is Pizza) // Noncompliant { // ... } else if (... } } ----