Only some classes can be considered beans, and only some beans merit the clean label. Accessors are independent. In particular, accessor calls are commutative. Event listeners must be exported as indexed properties. Clean beans are error proof.
Clean beans are thread safe.
With this set of constraints, an application can trust the clean bean and use it without risking a drop in quality. Let's examine these clean bean requirements in detail. This constraint is essential. A clean bean cannot afford to have a hidden state that leads to differing behavior in identical usage situations. Note that a bean's internal variables are compatible with this rule.