boolean (Object object) { if (object == this) return true; if (object == null || !object.getClass().equals(getClass())) return false; // we should not change this behaviour if value is set to null return Comparing.equal(myValue, ((AbstractTreeNode<?>)object).myValue); }