본문 바로가기

JAVA

Abstract (추상 클래스) 와 Interface (인터페이스)의 차이

## 추상 클래스

- abstract로 선언하거나 abstract 메소드를 포함하는 클래스이며, new 객체로 생성이 불가능하다.

- 오직 상속을 위해 존재한다. 같은 부모를 가지는 클래스를 묶는 개념

 

인터페이스 : 상수 필드만을 가지며 다중 상속이 가능하다. 

 

추상 클래스 VS 인터페이스 차이점

가장 큰 차이점은 다중 상속의 가능 유무.

추상 클래스를 상속받게 되면 다른 기능을 추가로 받을 수가 없다.

 

인터페이스는 조상이 다른 두 클래스에 상속이 가능하며 다중 상속이 가능하다 

 

클래스와 클래스끼리, 인터페이스와 인터페이스끼리의 상속은 extends를 사용하지만

클래스와 인터페이스 간의 상속은 implements를 사용한다

 

추상 클래스 혹은 인터페이스를 상속받는 구현 클래스는 부모 클래스의 추상 메소드를 모두 orverride 해야한다

'JAVA' 카테고리의 다른 글

JAVA에서 Database(MySQL) 연결하기 : JDBC 사용법  (0) 2021.05.09