추상클래스와 인터페이스

가오리·2022년 11월 26일
0

let me borrow your CS

목록 보기
25/25
post-thumbnail

추상클래스

public abstract class 클래스이름{
	// 구현부
	public abstract void 메서드이름();
}
  • 클래스 앞에 abstract 키워드를 사용하여 정의하며 하나 이상의 추상 메서드를 가지는 클래스를 말한다.
  • 추상 메서드를 선언하여 상속을 통해 하위 클래스에서 반드시 구현하도록 하는 클래스이다. 선언부만 작성하고 구현부는 작성하지 않은 채로 남겨두는 것을 말한다.
  • 단일 상속만 가능하고 모든 접근 제어자를 사용할 수 있다.
  • 변수와 상수를 선언할 수 있고 추상 메소드와 일반 메소드를 선언할 수 있다.





인터페이스

interface 인터페이스이름{
	// 구현부
	public abstract void 메서드이름();
	public default void 메서드이름() {};
}
  • interface 키워드를 사용하여 선언하는 인터페이스는 상수와 추상 메서드의 집합이다.
  • 인터페이스는 추상 클래스보다 추상화 정도가 높으며 추상 클래스와는 다르게 구현부가 있는 일반 메서드, 일반 멤버 변수를 가질 수 없다는 특징이 있다.
  • 인터페이스의 모든 메서드는 public abstract로 선언해야 하지만 컴파일 시 자동으로 생성해주기 때문에 생략할 수 있다.
  • 다중 구현이 가능하고 public 접근 제어자만 사용할 수 있다.
  • 상수만 선언할 수 있고 추상 메소드만 선언할 수 있다.
profile
가오리의 코딩일기

0개의 댓글