But reuseability is only part of the equation. A useful component architecture must also define an interface that all components adhere to so they can be used and interacted with without knowing anything about how the component was previously implemented. Microsoft ActiveX, OpenDoc, and LiveConnect are examples of popular technologies that have proven the value of component architecture. Java Beans is the new component software architecture for Java. The JavaBeans specification addresses several key issues, including Properties, Customization, Events, Introspection, Persistence, and Packaging.
Properties are the attributes of a component.
Some properties, such as color and font selection, may be visual in nature while others, such as a container or a counter, may have no visual representation. The properties of a Bean cannot be accessed directly-instead accessor methods are used to customize the bean by getting and setting the Beans properties as needed. This process allows the component to represent its properties to the outside world according to the published specification even if the internal representation changes. Integrity is preserved beca use no outside processes are allowed to directly modify the property. Beans rely on the JDK 1.1 event model, which differs slightly from the JDK 1.0.2 event model.