What is java pojo class, java bean, normal class?

180,403

Solution 1

  1. Normal Class: A Java class

  2. Java Beans:

    • All properties private (use getters/setters)
    • A public no-argument constructor
    • Implements Serializable.
  3. Pojo: Plain Old Java Object is a Java object not bound by any restriction other than those forced by the Java Language Specification. I.e., a POJO should not have to

    • Extend prespecified classes
    • Implement prespecified interface
    • Contain prespecified annotations

Solution 2

POJO stands for Plain Old Java Object, and would be used to describe the same things as a "Normal Class" whereas a JavaBean follows a set of rules. Most commonly Beans use getters and setters to protect their member variables, which are typically set to private and have a no-argument public constructor. Wikipedia has a pretty good rundown of JavaBeans: http://en.wikipedia.org/wiki/JavaBeans

POJO is usually used to describe a class that doesn't need to be a subclass of anything, or implement specific interfaces, or follow a specific pattern.

Solution 3

POJO = Plain Old Java Object. It has properties, getters and setters for respective properties. It may also override Object.toString() and Object.equals().

Java Beans : See Wiki link.

Normal Class : Any java Class.

Share:
180,403

Related videos on Youtube

Siva
Author by

Siva

Updated on July 09, 2020

Comments

  • Siva
    Siva almost 4 years

    Possible Duplicate:
    Difference between DTO, VO, POJO, JavaBeans?

    Hi please don't say my question is duplicate :-) I saw all questions but didn't understand the exact difference.

    Can someone explain what is POJO, Bean, Normal Class in easy language?

  • simap
    simap almost 12 years
    also, JavaBeans should implement the Serializable interface.
  • Siva
    Siva almost 12 years
    I heard except no-argument constructor both pojo and bean are same right ?
  • Siva
    Siva almost 12 years
    java bean, implement Serializable means every time we must implement Serializable manually ?
  • Siva
    Siva almost 12 years
    A public no-argument constructor: I think every class has its own no-argument constructor if am correct, why you specified only for bean only ? sorry if am wrong am fresher.
  • pathe.kiran
    pathe.kiran over 6 years
    if you did not specify any constructor for a class then only java will create no-argument constructor implicitly.
  • firstpostcommenter
    firstpostcommenter over 6 years
    So all normal Java classes are POJOs?
  • THIS USER NEEDS HELP
    THIS USER NEEDS HELP about 6 years
    @firstpostcommenter It might be useful to get a description of what POJO is from the person who coined the term. ("encoding business logic into regular java objects rather than using Entity Beans"). In other words, POJO was a name to given to describe "plain old java objects" in order to contrast Java beans. POJOs are domain/business objects specific, so not necessarily all Java classes are POJOs
  • shikher.mishra
    shikher.mishra about 6 years
    the only difference between a POJO and Beans is that Beans should implement Serializable interface?
  • Asif Mushtaq
    Asif Mushtaq almost 6 years
    I didn't during creating a bean in spring.