본문 바로가기
Java/기본 개념 및 클래스

[Java] 48. 인터페이스와 추상화

글: Song hyun 2024. 4. 25.
728x90
반응형

[Java] 48. 인터페이스

1. 인터페이스의 개념

2. 인터페이스의 특징

3. 인터페이스와 추상화



1. 인터페이스의 개념
(1) 인터페이스(Interface)는 강제성이 있는 약속이며, 기능 중심 설계이다.

여러 프로그래머들이 독립적으로 클래스를 작성하고, 이 클래스들을 합쳐, 하나의 소프트웨어를 만든다고 생각해보자.

다른 사람이 작성한 클래스와 내가 만든 클래스를 합치려면, 이 상호작용이 이루어지게끔 하나의 통일된 규격이 필요하다.

이를 위해 존재하는 것이 인터페이스이다.(= 밑그림의 개념)

 

 

(2) 인터페이스의 용도: 

인터페이스는 상속이 아닌, 클래스간의 유사성을 만들기 위해 사용된다.

비슷한 기능을 하는 클래스들을 하나로 묶어주는 틀, 규약이라고 생각하면 편하다.

이런 인터페이스는 다형성(Polymorphism), 확장성(Scalability)를 넓히는 데 도움이 된다.

 



(2) 인터페이스의 특징
- 추상 메서드: 모든 메서드가 추상 메서드로 선언된다. (=메서드의 구현부가 존재하지 않음.) (public abstract)
- 모든 변수는 상수로 선언된다. (=public static final)

- 다중 상속: 클래스는 여러 인터페이스를 구현할 수 있으므로, 다중 상속의 효과를 낼 수 있다.

-구현: 클래스가 인터페이스를 구현할 때는 implements(=구현하다)를 사용한다.

 

.

728x90
반응형