본문 바로가기

JAVA/Java2021-2

인터페이스를 왜 사용하는가?

인터페이스가 하는 일

: 클래스나 프로그램이 제공하는 기능 구현

 

Server (서비스 제공) <-> 사용하는 곳 (Client 프로그램)

: 클라이언트 프로그램이 서비스를 다 알고 사용하는 경우도 있지만, 

클라이언트가 서비스 interface(어떻게 구현되어 있는지 선언되어있는)를 보고 사용.

-> 어떻게 구현되어있는지는 모를 수도 있음 ( 어떤 기능인지 알고 인터페이스를 이용하여 사용 )

어떤 클래스가 특정 인터페이스 타입이라고 하면 그 객체는 인터페이스가 제공하는 모든 메서드를 구현했다는 의미

ex) JDBC (DB : Oracle, Mysql, MS-sql 을 이용하여 구현할 수 있다)

Connection 필요 생성-> DB에 Statement -> ResultSet

인터페이스 구현은 해당 디비회사에서 각각 구현해서 jar 파일을 제공한다. (라이브러리 DB드라이버 제공)

JDBC 명세의 interface만 보고 사용한다. (안에 무슨 내용인지 알 필요없고 우리는 가져다 쓰면 된다.)