Что означает термин Plain Old Java Object (POJO)? Я не мог найти ничего объяснительного.
POJO Wikipedia page говорит, что POJO - это обычный Java-объект, а не специальный объект. Теперь, что делает или что не делает и объект особенный в Java?
На приведенной выше странице также говорится, что POJO не должен распространять заданные классы, реализовывать заданные интерфейсы или содержать предварительно определенные аннотации. Означает ли это также, что POJO не имеют возможности реализовать интерфейсы, такие как Serializable
, Comparable
или такие классы, как апплеты или любые другие пользовательские классы/интерфейсы?
Кроме того, делает ли вышеуказанная политика (без расширения, без реализации), что нам не разрешено использовать какие-либо внешние библиотеки?
Где именно используются POJO?
EDIT: Чтобы быть более конкретным, мне разрешено расширять/внедрять классы/интерфейсы, которые являются частью Java или любых внешних библиотек?