The result of accessing such property might be unexpected.
Example:
class X { boolean isFoo() { true } boolean getFoo() { false } } // getFoo() will be called new X().foo