

하나는 생성자로 받아서 private field로 가지고있는다.
하나는 상속받는다
getRadius() 에 알고리즘을 작성해서 맞춘다.
어댑터 패턴은 호환되지 않는 인터페이스들을 연결하는 디자인 패턴입니다. 이를 통해 기존의 클래스를 수정하지 않고도, 특정 인터페이스를 필요로 하는 코드에서 사용할 수 있게 해줍니다. 또한 클래스의 인터페이스를 다른 인터페이스로 변환할 수도 있는데요. 이를 통해 서로 다른 인터페이스를 가진 클래스들이 상호 작용할 수 있도록 해서 코드의 재사용성을 증대시키게 됩니다.
어댑터 패턴은 다양한 프레임워크에서 적용되고 있습니다. 대표적인 예로는 다음과 같은 것들이 있습니다.
JDBC자바의 JDBC는 데이터베이스에 접근하기 위한 API입니다. JDBC는 Connection, Statement, ResultSet과 같은 인터페이스를 제공합니다.
JDBC는 어댑터 패턴을 사용하여 구현되었습니다. JDBC는 다양한 데이터베이스 드라이버를 지원합니다. 각 데이터베이스 드라이버는 JDBC의 인터페이스를 구현합니다.
JDBC 어댑터 패턴
IO자바의 IO는 입출력 처리를 위한 API입니다. IO는 InputStream, OutputStream, Reader, Writer와 같은 인터페이스를 제공합니다.
IO는 어댑터 패턴을 사용하여 구현되었습니다. IO는 다양한 입출력 스트림을 지원합니다. 각 입출력 스트림은 IO의 인터페이스를 구현합니다.
IO 어댑터 패턴
HandlerAdapter스프링의 HandlerAdapter는 컨트롤러의 요청을 처리하는 역할을 합니다. HandlerAdapter는 다양한 컨트롤러를 지원합니다. 각 컨트롤러는 HandlerAdapter의 인터페이스를 구현합니다.
스프링 HandlerAdapter 어댑터 패턴
어댑터 패턴은 다음과 같은 장점이 있습니다.