Object and Class in Java

In this page, we will learn about java objects and classes. In object-oriented programming technique, we design a program using objects and classes.
Object is the physical as well as logical entity whereas class is the logical entity only.

Object in Java

An entity that has state and behavior is known as an object e.g. chair, bike, marker, pen, table, car etc. It can be physical or logical (tangible and intangible).
The example of intangible object is banking system.
An object has three characteristics:
state: represents data (value) of an object.
behavior: represents the behavior (functionality) of an object such as deposit, withdraw etc.
identity: Object identity is typically implemented via a unique ID. The value of the ID is not visible to the external user. But, it is used internally by the JVM to identify each object uniquely.
For Example: Pen is an object. Its name is Reynolds, color is white etc. known as its state. It is used to write, so writing is its behavior
Object is an instance of a class.Class is a template or blueprint from which objects are created. So object is the instance(result) of a class.
Object Definitions:
  • Object is a real world entity.
  • Object is a run time entity.
  • Object is an entity which has state and behavior.
  • Object is an instance of a class.
  • Class in Java

    A class is a group of objects which have common properties. It is a template or blueprint from which objects are created. It is a logical entity. It can't be physical.
    A class in Java can contain:
  • fields
  • methods
  • constructors
  • blocks
  • nested class and interface
  • Syntax to declare a class:

    class {  
    field;  
    method;  
       }  
    

    Instance variable in Java

    A variable which is created inside the class but outside the method, is known as instance variable. Instance variable doesn't get memory at compile time. It gets memory at run time when object(instance) is created. That is why, it is known as instance variable.

    Method in Java

    In java, a method is like function i.e. used to expose behavior of an object.
    Advantage of Method
  • Code Reusability
  • Code Optimization
  • new keyword in Java

    The new keyword is used to allocate memory at run time. All objects get memory in Heap memory area.

    Object and Class Example: main within class

    we have created a Student class that have two data members id and name. We are creating the object of the Student class by new keyword and printing the objects value.
    Here, we are creating main() method inside the class.

    file: Student.java

    class Student{  
    int id;   //field or data member or instance variable  
    String name;  
    public static void main(String args[]){  
    Student s=new Student();   //creating an object of Student  
    System.out.println(s.id);   //accessing member through reference variable  
    System.out.println(s.name);  
      }  
     }  
    

    Output

    0 
    null
    

    Object and Class Example: main outside class

    n real time development, we create classes and use it from another class. It is a better approach than previous one. Let's see a simple example, where we are having main() method in another class.
    We can have multiple classes in different java files or single java file. If you define multiple classes in a single java source file, it is a good idea to save the file name with the class name which has main() method.

    file: TestStudent.java

    class Student{  
    int id;  
    String name;  
      }  
    class TestStudent{  
    public static void main(String args[]){  
    Student s=new Student();  
    System.out.println(s.id);  
    System.out.println(s.name);  
     }  
     }   
    

    Output

    0 
    null
    

    3 Ways to initialize object

  • By reference variable
  • By method
  • By constructor
  • Object and Class Example: Initialization through reference

    Initializing object simply means storing data into object. Let's see a simple example where we are going to initialize object through reference variable.

    file: TestStudent1.java

    class Student{  
    int id;  
    String name;  
     }  
    class TestStudent1{  
    public static void main(String args[]){  
    Student s = new Student();  
    s.id = 110;  
    s.name = "Pramesh";  
      System.out.println(s.id+" "+s.name);   //printing members with a white space  
     }  
     }    
    

    Output

    110 Pramesh

    Object and Class Example: Initialization through method

    we are creating the two objects of Student class and initializing the value to these objects by invoking the insertRecord method. Here, we are displaying the state (data) of the objects by invoking the displayInformation() method.

    file: TestStudent2.java

    class Student{  
    int rollno;  
    String name;  
    void insertRecord(int r, String n){  
    rollno=r;  
    name=n;  
      }  
    void displayInformation(){System.out.println(rollno+" "+name);}  
     }  
    class TestStudent2{  
    public static void main(String args[]){  
    Student s = new Student();  
    Student s1 = new Student();  
    s.insertRecord(120,"Rahul");  
    s1.insertRecord(220,"Raman");  
    s.displayInformation();  
    s1.displayInformation();  
      }  
      }   
    

    Output

    120  Rahul 
    220  Raman
    

    Object and Class Example: Initialization through constructor

    We will learn about constructors in java later.