인터페이스, 추상클래스

uni.gy·2023년 5월 8일
0

CS

목록 보기
4/18

인터페이스

  • 추상 메서드와 상수만을 포함한다.
  • 상속받을 서브 클래스에게 구현할 메서드들의 원형을 모두 알려주어, 클래스가 자신의 목적에 맞게 메서드를 구현하도록 하는 것이다.
  • 구현 객체의 같은 동작을 보장하기 위한 목적이 있다.

추상클래스

  • 추상 메서드를 최소 한 개 이상 가지고 있다.
  • 서브 클래스에서 슈퍼 클래스의 모든 추상 메서드를 오버라이딩하여 구현한다.
  • 객체(인스턴스)를 생성하기 위함이 아니며, 상속을 위한 부모클래스로 활용하기 위한 것이다.

공통점

  1. 인스턴스를 생성할 수 없다.
  2. 선언만 있고 구현 내용이 없다. 자식 클래스가 추상 메서드의 구체적인 동작을 구현해야 한다.

차이점

  1. 추상클래스는 추상 메서드를 자식 클래스가 구체화하여 그 기능을 확장하는 데 목적이 있다.
    인터페이스는 서로 관련이 없는 클래스에서 공통적으로 사용하는 방식이 필요하지만 기능을 각각 구현할 필요가 있는 경우에 사용한다.
  2. 추상클래스는 단일 상속 인터페이스는 다중 상속이 가능하다.
profile
한결같이

0개의 댓글