Object and Class in Java

Before discussing OOPs concept let us have a brief look at object and class with real world examples.

Object in Real world:

A real world entity. Every real world object/entity has two characteristics state and behavior.  Let us take the example of a car. Its state is defined by color, current speed etc and behavior is defined by changing speed, applying breaks etc.

Object in programming:

Like every real world object, software objects also have state and behavior.  State of the object is represented by data members or fields and behavior is represented by methods.

Class in Real world:

Let us take the example of cars. There are thousands of cars in existence but all built from the same set of blueprints and therefore contains the same components. In other words your car is an instance (object) and cars is the blueprint (class of objects).

Class in programming: 

Class is act as a blue print or template for creating objects. It provides state and behavior for its objects. Java is a pure object oriented language means everything we discuss in java is an object.


access_modifier class class_name{      //body of the class


Java class has mainly two type of access level:

Default: class objects are accessible only inside the package.
Public: class objects are accessible in code in any package.
Note: If no access modifier used it is taken as default.


 * This class is used add and show car details.
 * @author javawithease
public class Car {
      String carColor;
      int carSpeed;  
       * This method is used to add car details.
       * @param color
       * @param speed
       * @author javawithease
      void addCarDetails(String color, int speed){
            carColor = color;
            carSpeed = speed;
       * This method is used to show details.
       * @author javawithease
      void showCarDetails(){
            System.out.println("Color: " + carColor);
            System.out.println("Speed: " + carSpeed);
      public static void main(String args[]){
            //creating objects
            Car car1 = new Car();
            Car car2 = new Car();           
            //method call, need object here
            //because method is non-static.
            car1.addCarDetails("white", 120);
            car2.addCarDetails("Red", 150);           


Color: white
Speed: 120
Color: Red
Speed: 150