== Why is this an issue?

There's no valid reason to test ``++this++`` with ``++instanceof++``. 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

[source,java]
----
public class JunkFood{
  public void doSomething() {
    if (this instanceof Pizza) {  // Noncompliant 
      // ...
    } else if (...
  }
}
----


ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

=== Message

Offload the code that's conditional on this "instanceof" test to the appropriate subclass and remove the test.


'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]
endif::env-github,rspecator-view[]
