인터페이스

신예환·2022년 10월 21일
0

자바

목록 보기
4/12
post-thumbnail

인터페이스가 왜 나왔을까?

  • 클래스 다중상속의 장점과 단점은?

    • 장점 : 객체에 다형성을 원하는 만큼 부여할 수 있다.
    • 단점 : 하나의 자식 클래스에 2명 이상의 부모클래스에서 똑같의 형태의 메서드를 2개 이상을 물려받을 수 있다. 이때 자식 클래스에서 해당 메서드를 오버라이드를 하지 않는다면, 모호함이 발생한다. 참고로 자식클래스에서 해당 메서드를 오버라이드 해야할 의무는 없다.
  • 자바에서 클래스 다중상속을 막은 이유는?

    • C++과 달리, 자바는 개발자가 고생할 수 있는 여지를 줄이기 위해서, 해당 기능을 없앴다.
  • 클래스 다중상속에서 나타날 수 있는 문제점을 해결할는 방법은?

    • 자식클래스에서 모호한 메서드를 오버라이드 한다.
  • 인터페이스와 클래스의 차이점은?

    • 인터페이스는 100% 추상클래스 이다.
    • 인터페이스 안에 있는 메서드는 어차피 추상메서드 이기 때문에, abstract 키워드를 메서드 앞에 붙일 필요가 없다.
  • 자바에서 인터페이스 다중상속을 허용한 이유는?

    • 객체지향 프로그래밍에서 다형성은 굉장히 중요하다.
    • 자바에서는 다중상속이 막혀있어서, 자유로운 다형성 부여가 힘든 상황이다.
    • 그래서 자바는 인터페이스라는 제한된 형태의 클래스는 다중상속을 허용했다.
    • 인터페이스를 다중상속 해서, 모호함이 발생해도, 자식 클래스에서 해당 메서드를 오버라이드 해야하는게 필수 이기 때문에, 모호함이 존재할 수 없는 구조이다.

인터페이스 특징

  • 인터페이스 에서 구현한 default메소드는, implements한 클래스에서 별도로 구현하지 않더라도 에러가 발생하지는 않는다.
profile
더디가도 함께가자

0개의 댓글