interface duck {
void quack();
void fly();
}

이 있고

interface turkey {
void another_quack();
void short_fly();
}

가 있을 때 duck 인터페이스를 이용해서 turkey 객체를 움직이게 하고 싶다~ 라고 하면은 진짜 말그대로 어댑터를 이용해서

class adapter implements duck {
private turkey turkey_instance;

public adapter(turkey turkey) {
this.turkey~ = turkey;
}

duck 추상 메소드 구현...
}

이렇게 받고자 하는 객체를 구성하고 turkey 그 자체의 매소드 대신 adapter 로 쓰는거래요 물론 일반 몇줄 안되는 코드에선 걍 그게 그거같지만 안드로이드쪽에서 일반 뷰에다가 리스트 넣어주고 리사이클러뷰에 이상하게 막 넣어주고 이런거 보면 확 이해가 갈듯...