Abstraction Basics

Hiding implementation details

Interview Relevant: Core OOP principle
5 min read

Abstraction in Java

Abstraction focuses on exposing only essential features and hiding implementation details.

Key Idea: What an object does, not how it does it.

Code Examples

Abstraction using interface

java
1
2interface Vehicle {
3    void start();
4}
5
6class Car implements Vehicle {
7    public void start() {
8        System.out.println("Car starts with key");
9    }
10}
11
12Vehicle v = new Car();
13v.start();
14          

Use Cases

  • API design
  • Loose coupling
  • Framework development
  • Hiding complex logic

Common Mistakes to Avoid

  • Confusing abstraction with encapsulation
  • Exposing implementation details