Java Abstract Classes Tutorial

Abstract classes in Java allows us to create a blueprint for a class but hide the implementation details of some methods. It is a restricted class that cannot be used to create objects (to access it, it must be inherited from another class).

What is an Abstract Class?

A class which is declared with the abstract keyword is known as an abstract class in Java. It can have abstract and non-abstract methods (method with the body).

Key Points:
  • An abstract class must be declared with an abstract keyword.
  • It can have abstract and non-abstract methods.
  • It cannot be instantiated.
  • It can have constructors and static methods also.
  • It can have final methods which will force the subclass not to change the body of the method.

Abstract Method in Java

A method which is declared as abstract and does not have implementation is known as an abstract method.

abstract void printStatus(); //no method body and abstract

Example of Abstract Class

abstract class Bike {  
  abstract void run();  
}  

class Honda4 extends Bike {  
  void run() {
    System.out.println("running safely");
  }  
  
  public static void main(String args[]) {  
   Bike obj = new Honda4();  
   obj.run();  
  }  
}

Frequently Asked Questions

What will I learn here?

This page covers the core concepts and techniques you need to understand the topic and progress confidently to the next lesson.

How should I use this page?

Start with the overview, then follow the section links to deepen your understanding. Use the table of contents on the right to jump to specific sections.

What should I read next?

Use the navigation below to continue to the next lesson or explore related topics.