728x90
- 기존의 클래스는 하나의 클래스만 상속 받을 수 있는 단일 상속의 특징을 갖고 있었지만
- 인터페이스는 다중 상속이 가능하다.
- 클래스들이 필수로 구현해야하는 추상 메서드와 상수만 사용가능하다.
즉, 추상 클래스는 미완성된 클래스라고 하면 인터페이스는 뼈대만 제공하는 클래스라고 할 수 있다.
지금부터 코드를 통해 인터페이스에 대해 공부해보자..!
public class Adult {
public void buyTicket(){
System.out.println("티켓을 구입합니다.");
}
}
public class Child{
public void buyTicket(){
System.out.println("티켓을 구입합니다.");
}
}
두개의 클래스는 buyTicket을 하는 공통된 기능을 사용하고 있다.
구현해야할 코드가 많아진다면 중복 되는 코드도 많아질 것이기 때문에
공통되는 'buyTicket'을 인터페이스로 만들 수 있다.
// 인터페이스
public interface BuyTicket{
void buyTicket();
}
public class TicketBox implements BuyTicket{
@Override
public void buyTicket(){
System.out.println("티켓을 구입합니다.");
}
}
public static void main(String[] args){
TicketBox ticketBox = new TicketBox();
ticketBox.buyTicket();
}
// 실행 결과 => 티켓을 구입합니다.
위와 같이 동일한 기능을 하는 코드를 중복해서 사용하기 보다는
인터페이스를 통해 중복 코드를 줄일 수 있다.
728x90
'Java' 카테고리의 다른 글
제네릭과 제네릭 클래스 / Wrapper 클래스 (0) | 2023.06.12 |
---|---|
인터페이스 - 놀이공원 티켓 구입하기 (0) | 2023.06.08 |
추상클래스 (0) | 2023.06.08 |
클래스 - 샌드위치 만들기 (0) | 2023.06.07 |
클래스 - 3 (0) | 2023.06.07 |