Отличие заключается в соблюдении соглашений именования (заглавная буква после "get/set/is") для методов доступа к свойствам, наличии конструктора без аргументов и сериализуемости. Это позволяет использовать JavaBean'ы с фреймворками и инструментами, основанными на интроспекции.
Обычный объект может не следовать этим правилам.
java
java
Ключевые отличия:
| Критерий | Обычный объект | JavaBean |
|---|---|---|
| Конструктор без args | Не обязательно | Обязательно |
| Именование методов | Любое | get/set/is + имя свойства |
| Сериализуемость | Не обязательно | Желательно/Обязательно для некоторых фреймворков |
| Использование | Общее назначение | Компонентная модель, фреймворки (Spring, поздавшее EJB) |