Stack/Java
인터페이스정리 및 추상클래스와 비교
Emmababy
2020. 10. 29. 10:03
728x90

인터페이스 : 모든 메서드가 추상메서드인경우(추상클래스보다 한단계 위의 추상)
- 적는 모든메서드는 추상으로 간주되기때문에 abstract를 붙여줄 필요없다.
- 인스턴스가 존재하지 않는 지점(그러므로 초기화 필요없음)
- 객체생성 불가
- 구현객체가 같은동작을 보장하기위한 기능
- 다중상속가능

📌추상클래스와 인터페이스의 차이점 : 이 둘은 용도에 따라서 골라사용한다.
- 추상클래스 : 조상클래스의 기능을 완벽히 똑같이 사용하고싶을때
- 인터페이스 : 조상클래스의 기능을 재정의하여 사용하고싶을때
추상클래스(미완성설계도) : 동일기능을 묶어 놓는 클래스로, 상속을 통해 자식객체에서 완성[단일상속]
인터페이스(기본설계도) : [다중상속]
인터페이스로만 상속하여 쓴다면, 모든기능을 재정의 해서써야하는 불편함이있다.
그렇기때문에 추상클래스와 비교해가며 선택해서 쓴다.
728x90