この例は、groovy コンソールで簡単にテストできます。
var a は非 null と評価され、b は null と評価されます。
どちらも org.codehaus.groovy.runtim.NullObject のインスタンスです
def b = null
println b.getClass()
println b == null
def a = null.getClass().newInstance()
println a.getClass()
println a == null
誰も理由を知っていますか?
リフレクション コードを扱う場合、これは注意が必要です。