Method Overriding Example in Java
On this page (9sections)
Introduction
Method Overriding is a classic Java console program that demonstrates the concept with complete source code and sample output. Object-oriented programming models real entities with classes, objects, inheritance and polymorphism.
This tutorial walks through the program line by line, explains how the logic works, and highlights best practices you can apply in your own code.
Definition
Method overriding, in object oriented programming, is a language feature that allows a subclass or child class to provide a specific implementation of a method that is already provided by one of its superclasses or parent classes. The implementation in the subclass overrides (replaces) the implementation in the superclass by providing a method that has same name, same parameters or signature, and same return type as the method in the parent class. The version of a method that is executed will be determined by the object that is used to invoke it.
Method Overriding Example Program
class MethodOverridingExample{
public void add(int num1,int num2){
int result1=num1+num2;
System.out.println("Result of parent class method is "+result1);
}
}
class OverriddenMethod{
public void add(int num1,int num2){
int result2=num1-num2;
System.out.println("Result of overridden method is "+result2);
}
}
class MainMethodOverriding{
public static void main(String[] args){
MethodOverridingExample obj1= new MethodOverridingExample();
obj1.add(7,5);
OverriddenMethod obj2=new OverriddenMethod();
obj2.add(7,5);
}
}
Sample Output
Result of parent class method is 12
Result of overridden method is 2
When to use
Use OOP examples when modelling entities with state and behaviour in larger applications.
How it works
-
Execution begins in the
mainmethod — the JVM calls this method when you run the class. -
int result1=num1+num2;updates a variable used in the calculation or output. -
A
println/printcall writes text to the console — part of the sample output below. -
int result2=num1-num2;updates a variable used in the calculation or output. -
A
println/printcall writes text to the console — part of the sample output below. -
MethodOverridingExample obj1= new MethodOverridingExample();updates a variable used in the calculation or output. -
OverriddenMethod obj2=new OverriddenMethod();updates a variable used in the calculation or output. -
Compare your console output with the sample output for Method Overriding to confirm the program behaves correctly.
Best Practices
- Use meaningful variable and class names that describe their purpose.
- Compile and run the program locally — modify values to see how output changes.
- Read compiler errors carefully; they usually point to the exact line to fix.
Common Mistakes
- Copying code without understanding each line — practice by changing one statement at a time.
- Mismatching the public class name and the
.javafilename. - Forgetting semicolons at the end of statements.