추상클래스와 인터페이스의 공통점
- 객체생성불가
- 추상메서드를 가진다.
- 자식클래스나 구현클래스에서 추상메서드를 반드시 오버라이딩을 해야한다.
추상클래스와 인터페이스의 차이점
추상클래스
- 추상클래스는 추상메서드와 구현메서드를 가질 수 있다.
- 추상클래스에 공통의 동작을 나타내는 구현메소드 walk()가 존재하므로 서로 기능이 비슷한 클래스(Dog.class, Cat.class)의 공통부분을 묶을 때 사용한다.
- 단일상속만 가능
인터페이스
- 구현메서드를 가질 수 없으며, 100% 추상메서드만 가질수 있다.
- 서로 기능이 다른 클래스(TV class, Radio class)의 공통부분(리모콘)을 묶을 때 사용된다.
- 다중구현(implements)이 가능
※주의할 것
public class Dog extends Animal implements Pet, Robots
→Dog class는 Animal 추상클래스를 상속받으며, Pet인터페이스와 Robots인터페이스를 구현하였다.
Animal 추상클래스가 Pet인터페이스와 Robots인터페이스를 implements한 것이 아님에 주의!!!!!
'자바 > Java TPC(생각하고, 표현하고, 코딩하고)' 카테고리의 다른 글
문자열(String)이 객체라고요? (0) | 2022.10.27 |
---|---|
Object 클래스는 신이야 (0) | 2022.10.27 |
인터페이스(100% 다형성 보장) & final, static (0) | 2022.10.27 |
추상클래스(일부 다형성 보장) (0) | 2022.10.27 |
다형성 (0) | 2022.10.26 |