티스토리 뷰

Dev/Dictionary

인터페이스(Interface)

꿈을 위해 잠을 잊은 그대에게 2020. 4. 2. 08:02

- 작업지시서라고도 한다.

- 다형성을 가능하게 한다.

 

 만약 팀장이 두명의 직원에게 Interface를 만들어 놓고 Interface를 implements해서 작업하라고 지시를 하였습니다.

 

두명의 직원은 인터페이스를 상속 받을 경우 무조건 인터페이스 내의 메서드를 다 작업해야 하기 때문에 

 

1) 사용해야 하는 메서드를 알고

2) 정해진 메서드의 이름으로 작성할 수 있습니다.

 

 하지만 인터페이스가 없다면 두 직원은 각자가 생각했을 때 필요한 메서드를 만들것이고, 각자의 마음대로 메서드명을 작성하게 되겠죠.

 

이렇게 각각의 개성이 가득 담긴 내용을 추후에 합치게 될 때 메서드명과 메서드의 개수 등을 다시 수정해야 하는 번거로움이 생기게 됩니다.

 

인터페이스의 특징

 - 추상 메서드와 상수만이 존재 : 상수는 private로 선언하면 안됨

 - 인터페이스는 객체는 아니지만 객체 타입으로만 사용 : 다형성

 - 구현은 인터페이스를 상속받은 자식 클래스에서

 - public interface 인터페이스명 { } 으로 선언 : New -> interface로 생성해도 됨

 - 가독성을 위해 interface를 만들 때 인터페이스명은 맨 앞에 대문자 I로 작성

 - 상속할 때 extends가 아닌 implments라고 선언

 - 다중상속이 가능

'Dev > Dictionary' 카테고리의 다른 글

자바 웹을 다루는 기술 (Servlet&JSP/Spring)  (0) 2020.05.19
Java Spring 용어정리  (0) 2020.04.30
Java & Spring 개발자 면접 질문  (0) 2020.04.11
Managed code vs Native code(Unmanaged code)  (0) 2020.04.06
Java 용어 정리  (0) 2020.04.03
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크