Java Programming Tutorial Index

Java Object Oriented

Declaring a method in the subclass which already exists there in the parent class is known as method overriding. When a class is inheriting a method from a superclass of its own, then there is an option of overriding the method provided it is not declared as final. The advantage of using overriding is the ability to classify a behavior that's specific to the child class, and the child class can implement a parent class method based on its necessity.

There are certain rules that a programmer should follow to implement overriding. These are:

  • In Java, a method can only be written in the child class and not in same class.
  • Argument list should be the same as that of the overridden method of that class.
  • Instance methods can also be overridden if they are inherited by the child class.
  • A constructor cannot be overridden.
  • Final - declared methods cannot be overridden.
  • Any method that is static cannot be used to override.
  • The return type must have to be the same, or a subtype of the return type declared in the original overridden method in the parent class.
  • If a method cannot be inherited, then it cannot be overridden.
  • A child class within the same package as the instance's parent class can override any parent class method that is not declared private or final.
  • A child class in a different package can only override the non-final methods declared as public or protected.

Java Program to Demonstrate Method Overriding


class college {
 public void move() {
  System.out.println("College is open");
class univ extends college {
 public void move() {
  System.out.println("University is open too");
public class stud {
 public static void main(String args[]) {
  college a = new college();
  college b = new univ();

Method Overriding in Java - Video Tutorial

To understand "Java Method Overriding" in more depth, please watch this video tutorial.

Found This Page Useful? Share It!
Get the Latest Tutorials and Updates
Join us on Telegram