JAVA

22/04/20 JAVA 13 인터페이스

박도치 2022. 4. 26. 15:59

인터페이스란?

인터페이스는 컴퓨팅 용어로 구글링 했을 때 "서로 다른 두 개의 시스템 장치 사이에서 정보나 신호를 주고받는 경우의 접점이나 경계면이다. 즉, 사용자가 기기를 쉽게 동작시키는데 도움을 주는 시스템이다." 라고 정의되어있다. 프로그래밍에서의 인터페이스도 비슷한 면을 가지고 있다. 인터페이스 라는 기본 틀이 중간에서 매개 역할을 해주면서 다른 클래스 사이를 연결해주는 역할을 한다고 볼 수 있다.  특히 자바에서는 클래스를 통한 다중상속을 지원하지 않기 때문에 더더욱 인터페이스가 중요한 역할을 하게된다.

 

인터페이스 선언 

인터페이스 선언은 public inteface 인터페이스 이름{} 이런식으로 선언하거나 직접 인터페이스를 만드는 방법이 있다.

 

보라색 아이콘 인터페이스

 

인터페이스의 특이점은 public void () 이후에 바로 세미콜론' ; ' 이 온다는 점

 

인터페이스와 추상클래스의 차이점

인터페이스 와 추상클래스는 얼핏 비슷해 보이지만 다른데, 추상클래스는 그 추상클래스를 상속받아서 기능을 이용 및 확장시키지만 인터페이스의 경우 함수의 구현을 위한 틀과 같은 껍데기라 생각하면 편하다. 

 

 

인터페이스의 구현

인터페이스는 클래스를 이어주는 틀 과같은 존재이기 때문에 틀에 넣을 클래스와 출력해줄 테스트클래스를 준비해준다. 틀에 넣을 클래스들은 인터페이스(StartAndStop)에 implements 해주도록 한다.

인터페이스
클래스1
클래스2

 

클래스3

이후 출력할 테스트 클래스에 클래스를 호출하여 출력하면 끝이다.

얼핏보면 정말 간단해보이고 별거 없는듯하지만, 인터페이스가 있음으로써 위 세 개 클래스를 하나하나 만들어 주는 것이 아닌, 프로그램 실행 종료라는 틀 하나를 만들어 놓고 필요한 클래스들을 가져다 쓸 수 있다는 점에서 데이터적으로도 피로도 적으로도 굉장히 이점이 있다고 본다.