반응형
* Abstract Class와 Interface의 공통점
추상클래스와 인터페이스는 선언만 있고 구현 내용이 없는 클래스다.
인터페이스와 추상클래스를 가지고 새로운 인스턴스(객체)를 생성할 수 없기 때문에 상속을 통해 자식 클래스에서만 객체를 생성할 수 있다.
* Abstract Class(추상 클래스)
extends 키워드를 통해 추상 클래스를 상속받는다.
추상클래스는 추상메서드(abstract method)가 하나라도 존재하는 클래스를 말한다.
일부는 구현된 메소드도 있을 수 있고, 일부는 abstract method로 구현이 되어있지 않은 메소드도 있을 수 있다.
즉, 구현된 메소드가 있을 수 있기 때문에 만들어야할 여러 클래스들의 공통점을 찾아 추상화시켜서 사용한다.
* Interface
implements 키워드를 통해 인터페이스를 상속받는다.
인터페이스는 쉽게 말하면 껍데기라고 말할 수 있고, 설계도 또는 명세라고 생각하면 된다.
모든 메소드가 추상 메소드이기 때문에 인터페이스를 상속받는 자식 클래스는 인터페이스의 모든 메소드를 필수적으로 구현해야 한다.
반응형
'∙Java' 카테고리의 다른 글
[Java] OOP(객체지향 프로그래밍) 특징과 꼬리질문 (0) | 2019.01.12 |
---|---|
[Java] ==와 equals()의 차이 (0) | 2019.01.10 |
[Java] Stack 영역과 Heap 영역 (0) | 2019.01.10 |
[Java] 왜 public static void main 이여야 할까? (0) | 2019.01.10 |