Bu yazımda size Adapter adında nesneye dayalı yazılım şablonunu (Object-Oriented Design Pattern) anlatacağım. Bu yazılım şablonu genellikle daha önce yazılan bir kodun başka bir programa entegre olmasını sağlamak amaçlı yapılır. Aslında adından da anlaşılacağı üzere adaptör özelliğine sahiptir. Bunu şöyle açıklayalım. Siz bir program yazdınız, sonra başka bir yerde koda ihtiyacınız oldu. Bunu da bir yerlerden buldunuz. Ama şöyle bir sıkıntı oluştu sizin yazdığınız ara yüze(interface) bulduğunuz kod uyumlu değil. Siz bu noktada hemen araya bir adaptör sınıfı yazıyorsunuz. Bu iki nesneyi biri birine uyumlu hale getiriyorsunuz. Bir başka kullanımı da sizin birden fazla entegre sınıfa ihtiyacınız var ve siz bu sınıfların ortak metotlara dayalı çalışsın istiyorsunuz. İşte bu noktada tek bir ara yüze dayalı birden fazla sınıf yazabilirsiniz.
public class User{ public static void main(String [] args){ Adapter a = new Adapter(); a.doThis(); } } public interface Target{ public void doThis(); } public class Adapter extends Adaptee implements Target{ public void doThis(){ super.doThat(); } } public class Adaptee{ public void doThat(){ System.out.println("Hello world!"); } }