Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 7

Adapter Design Pattern

By: Klementinus Kennyvito Salim


What is Adapter?

• Adapter design pattern is basically similar to a hardware adapter , except


now it is for a program class.
• It converts the interface of a class into another interface that the client class
can accept and work together with
Adapter Diagram

Geeksforgeeks.com
Sample Code
interface Cat
{ interface Cat_Toy
{
public void walk(); // target interface
public void meow(); // Just a toy not walking
} public void makeSound();
}
class Persian implements Cat
{ class Calling_Cat implements Cat_toy
{
public void walk() public void makeSound()
{ {
System.out.println("Walking"); System.out.println("Squeak");
} }
public void meow() }
{
System.out.println("Meow
Meow");
}
}
Sample Code
class Adapter implements Cat_Toy class Main
{ {
// You need to implement the public static void main(String args[])
interface your {
// client expects to use. Persian persian = new Persian();
Cat cat; Cat_Toy toy = new Cat_Toy();
public Adapter(Cat cat) // Calling the adapter class to make the interface
{ compatible
// reference to object we adapted
this.cat = cat; Cat_Toy Adapter = new Adapter(persian);
}

public void makeSound() System.out.println("Cat_toy...");


{ toyDuck.makeSound();
// translate the methods
appropriately System.out.println("Adapter...");
cat.meow(); Adapter.makeSound();
} }
} }
The Advantages and Disadvantages of using
Adapter Design Pattern

Advantages Disadvantages
• Achieve flexibility and reusability of classes • Sometimes many adaptations are required
and functions among many adapters so that a certain type is
reached
Thank You

You might also like