728x90
반응형
[Java] 48. 인터페이스
1. 인터페이스의 개념
2. 인터페이스의 특징
3. 인터페이스와 추상화
1. 인터페이스의 개념
(1) 인터페이스(Interface)는 강제성이 있는 약속이며, 기능 중심 설계이다.
여러 프로그래머들이 독립적으로 클래스를 작성하고, 이 클래스들을 합쳐, 하나의 소프트웨어를 만든다고 생각해보자.
다른 사람이 작성한 클래스와 내가 만든 클래스를 합치려면, 이 상호작용이 이루어지게끔 하나의 통일된 규격이 필요하다.
이를 위해 존재하는 것이 인터페이스이다.(= 밑그림의 개념)
(2) 인터페이스의 용도:
인터페이스는 상속이 아닌, 클래스간의 유사성을 만들기 위해 사용된다.
비슷한 기능을 하는 클래스들을 하나로 묶어주는 틀, 규약이라고 생각하면 편하다.
이런 인터페이스는 다형성(Polymorphism), 확장성(Scalability)를 넓히는 데 도움이 된다.
(2) 인터페이스의 특징
- 추상 메서드: 모든 메서드가 추상 메서드로 선언된다. (=메서드의 구현부가 존재하지 않음.) (public abstract)
- 모든 변수는 상수로 선언된다. (=public static final)
- 다중 상속: 클래스는 여러 인터페이스를 구현할 수 있으므로, 다중 상속의 효과를 낼 수 있다.
-구현: 클래스가 인터페이스를 구현할 때는 implements(=구현하다)를 사용한다.
.
728x90
반응형
'Java > 기본 개념 및 클래스' 카테고리의 다른 글
[Java] 53. String, StringBuffer 클래스 (0) | 2024.04.26 |
---|---|
[Java] 52. Object 클래스 (0) | 2024.04.25 |
[Java] 47. 추상 클래스 활용: 클래스 구현하기 (0) | 2024.04.24 |
[Java] 46. 추상 클래스 (0) | 2024.04.24 |
[Java] 45. 배열, 업/다운 캐스팅, 다형성 활용 : 인형 뽑기 프로그램 만들기 (0) | 2024.04.24 |