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

+ Recent posts