what?
객체간 상호작용을 위한 규약
why?
협업을 위한 틀
여러 명이 같이 작업할 때 구현해야 할 기능을 미리 협의한 뒤 반환타입을 정해두면 효율적으로 작업 진행 가능
how?
interface Interface1{
//상수
public static final int exampleInt = 0;
//메서드
public abstract void exampleMethod();
}
제어자를 생략해도 컴파일러가 자동으로 추가함
상속과 달리 extends 대신에 implements로 구현
오버라이딩으로 메서드 구현(인터페이스의 접근제어자보다 더 넓거나 같은 범위의 제어자를 사용해야 함)
인터페이스와 다형성
특정 인터페이스를 구현한 클래스는 인터페이스 타입의 참조변수로 참조 가능
interface ExampleInterface{
public abstract exampleMethod();
}
class ExampleClass implements ExampleInterface{
@Override
public abstract exampleMethod(){
System.out.println("구현한 메서드");
}
}
'Java' 카테고리의 다른 글
[Java] 익명 클래스 (0) | 2024.04.02 |
---|---|
[Java] 내부 클래스 (0) | 2024.03.31 |
[Java] 추상 메서드와 추상 클래스 (0) | 2024.03.31 |
[Java] 상속과 다형성⑥ 다형성 (0) | 2024.03.30 |
[Java] 상속과 다형성⑤ 제어자 (0) | 2024.03.30 |