Language/Java
Interface
용용띠용
2025. 4. 15. 14:02
인터페이스
: 클래스가 지켜야 할 최소한의 규칙 정의
- 구현x, 구조만 정의
특징
- 변수: public static final로 고정 선언 // 형식 무관
- 변수 선언 최소화(권장)
- 메서드: public
- 구조만 정의
- 클래스에서 오버라이딩으로 구
- 다중 상속 가능
- 객체 생성 불가
상속
- 다른 인터페이스에서 활용: extends
- 클래스에서 활용: implements
구현체
: 인터페이스를 구현한 클래스
기능
1. 다중 구현
: 한 개의 클래스가 여러 인터페이스 구현
- implements 키워드
interface Device{
void call();
}
interface Search{
void search();
}
class Phone implements Device, Search{
public void call(){
System.out.println("전화를 걸고 있습니다.");
}
public void search(){
System.out.println("검색을 하고 있습니다.");
}
//추가로 메서드 생성 및 구현 가능
}
2. 다중 상속
- extends 키워드
interface Animal{
void eat();
}
interface Swim{
void swim();
}
interface marineLife extends Animal, Swim{
void underwaterBreath();
}
class Fish implements marineLife{
void eat(){
System.out.println("먹이를 먹습니다.");
}
void swim(){
System.out.println("수영을 합니다.");
}
void underwaterBreath(){
System.out.println("수중 호흡을 합니다.");
}
}