Bean is a reusable object, created with the Java programming language and in conformity to Sun’s 100 percent Pure Java specifications, that is packaged according to the JavaBeans specifications. A bean differs from a Java applet in that it has persistence (it remains on the user’s system after execution).
Additionally, beans are capable of communicating and exchanging data with other JavaBeans through inter-process communication. In this sense, a JavaBean is similar to an ActiveX control, but with a very important exception: Unlike ActiveX controls, which execute only on computers that support object linking and embedding (OLE) at the operating system level, a will execute on any computer platform that is capable of running a Java interpreter.