1) if(null != parentObj.childObj)
2) if(parentObj.childObj != null)
Do you think that "1" will avoid a potential null pointer exception in the case where 'parentObj' is null, in contrast to "2"?
Why not just if(parentObj != null && parentObj.childObj != null) ?
If parentObj is null, referencing any method/field on parentObj will result in an NPE. In other words, you need if (parentObj != null && parentObj.childObj != null) to avoid an NPE. Groovy cuts down on this (very common) type of verbosity with the safe navigation operator, which lets you write if (parentObj?.childObj).