For what it's worth, in your "all other programming languages" example you don't need the second null check
null != james.car.colour
It's redundant when we know the first two are true.