How do you use abstract classes with a simple code example?

Abstract classes in Java serve as a blueprint for other classes. An abstract class can define abstract methods that must be implemented by subclasses, and it can also contain concrete methods with actual implementations.

Here is a simple example to illustrate the use of abstract classes:

abstract class Animal { abstract void sound(); void sleep() { System.out.println("Sleeping..."); } } class Dog extends Animal { void sound() { System.out.println("Bark"); } } public class Main { public static void main(String[] args) { Dog dog = new Dog(); dog.sound(); // Output: Bark dog.sleep(); // Output: Sleeping... } }

abstract classes inheritance Java