class, abstract class 및 interface란 무엇인가?
발행: (2025년 12월 11일 오후 02:35 GMT+9)
2 min read
원문: Dev.to
Source: Dev.to

클래스란?
- 클래스는 객체를 생성하기 위한 청사진(템플릿)이다.
class키워드로 클래스를 선언한다.- 클래스 안에는 필드(비정적/정적), 블록(비정적/정적), 생성자, 구체 메서드(비정적/정적), 내부 클래스, 인터페이스 등을 직접 작성할 수 있다.
- 일반적으로
new키워드를 사용해 클래스의 객체를 만든다. - 클래스는 사용자 정의 데이터 타입이기도 하다.
- 일반 클래스 안에서는 추상 메서드를 정의할 수 없다.

추상 클래스
abstract키워드로 추상 클래스를 선언한다.- 추상 클래스의 객체는 생성할 수 없다.
- 추상 클래스는 다음을 포함할 수 있다:
- 비추상(구체) 메서드
- 추상 메서드
- 비정적 필드
- 정적 필드
- 추상 클래스는
final로 선언될 수 없다.
참고
- 추상 메서드에는 본문이 없으며, 구현은 반드시 하위 클래스에서 제공해야 한다.

인터페이스
- 인터페이스는 추상 메서드와 상수(
public static final) 변수들을 포함하는 청사진이다. interface키워드로 인터페이스를 선언한다.- 인터페이스를 이용하면 다중 상속을 구현할 수 있다.
