The INSTANCEOF operator
When manipulating an object reference with a variable defined with a superclass of the real class used to instantiate the object, you sometimes need to identify the real class of the object.
This is possible with the INSTANCEOF
operator.
This operator checks whether the left operand is an instance of
the type or class specified by the right operand:
object_reference INSTANCEOF type_or_class
This example creates a
java.lang.StringBuffer
object,
assigns the reference to a java.lang.Object
variable,
and tests whether the class type of the object reference is
a java.lang.StringBuffer
:IMPORT JAVA java.lang.Object
IMPORT JAVA java.lang.StringBuffer
MAIN
DEFINE o java.lang.Object
LET o = StringBuffer.create()
DISPLAY o INSTANCEOF StringBuffer -- Shows 1 (TRUE)
END MAIN