( •̀ ω •́ )✧
인터페이스의 이해 본문
※ 본 내용은 강의를 수강하며 정리한 글입니다 👉 강의 링크
인터페이스는 무엇인가?
- 어떤 것, 어떤 장소, 어떤 시간에 접근하고자 하지만 일반적인 방법으로는 접근할 수 없다.
- 접근할 수 있는 도구나 방법이 있다면 그것을 ‘인터페이스’라고 한다.
- 쉽게 생각하면, 인터스텔라에서 다른 우주에 접근하기 위한 도구로 웜홀이 있는데, 그것을 인터페이스로 볼 수 있다.
- 프로그래밍에서는 코드의 분리를 위해 고안된 개념이다.
가령, 배터리 분리형 스마트폰을 상상해보자.
💡 배터리를 분리하는 이유는 무엇일까?
- 하나의 스마트폰에 다양한 업체의 배터리를 교체하기 위해
- 하나의 배터리를 다양한 업체의 스마트폰에 호환하기 위해
아무튼 스마트폰 제조 상황과 배터리 제조 상황을 분리하여 진행하기 위함이라 생각하자.
그렇다면,
💡배터리 분리를 위해서는 어떤 부분을 고민해야 할까?
- 결합했을 때, 스마트폰과 호환될 수 있는 ‘접점’이 필요하다.
- 이 접점에는 스마트폰 업체와 배터리 업체의 어떠한 규약이 필요할 것이다.
interface Battery{
int getEnergy();
Boolean checkVolt(...);
}
‘규약’에 해당. 어떤 Battery Class가 오든 위와 같은 기능을 갖고 있어야 한다.
배터리가 없는 상태에서, 스마트폰은 미리 배터리가 있는 상황을 가정하여 ‘규약’과, 이 규약을 기반으로 ‘기능’을 구현해놓는다.
인터페이스를 상속하여(implements) 구현한 배터리 객체를 set한다.
이 객체는 정해진 ‘규약’을 모두 구현해야 한다.
정리
결국, ‘스마트폰’에서는 인터페이스라는 규약을 통해 구현된 객체(배터리)를 사용할 수 있게 되는 것
인터페이스란 분리되어 있는 객체를 사용할 수 있게 해주는 약속이다.
'✏️ 노트 > java' 카테고리의 다른 글
[Java] 인터페이스의 구현 - 코드 수정을 없애기 위한 설정 (0) | 2023.11.02 |
---|---|
[Java] 인터페이스의 구현 - 기본 (1) | 2023.11.02 |
05. 문자와 문자열 (0) | 2023.08.17 |
04. 상수와 리터럴 (0) | 2023.08.17 |
03. 변수의 타입 - 기본형 (0) | 2023.08.17 |
Comments