The concept of automagic properties is nice, but not that useful because generated methods have same permission as fields. The point of a bean/properties is to provide encapsulation. Private fields do not generate access methods. Public fields should typically be avoided.