Во-первых, позвольте мне сказать, что необходимость отличать объект Parent от любого из его подклассов, скорее всего, является конструктивным недостатком. Если вам нужны правила, которые применяются только к родительскому классу, а не к любому из его подклассов, это указывает на то, что родительский класс будет обрабатываться параллельно его дочерним элементам. Чтобы решить эту проблему, не вставляйте родительские объекты, а создайте другой подкласс.
class ChildWithoutAdditionalProperties extends Parent {
}
и вставить объекты этого класса.
Во-вторых, not Child()
не соответствует объектам какого-либо другого класса, кроме Child
, поскольку ваше замечание «Я не могу использовать не Child ()», по-видимому, указывает: оно будет соответствовать отсутствию какого-либо факта Child.
Чтобы проверить, что объект относится к определенному классу, вы можете сравнить класс этого объекта:
rule "parent"
when
$e: Parent( $e.getClass == Parent.class )
then
System.out.println( "found Parent" );
end
person
laune
schedule
19.09.2016