추상 클래스
abstract 제한자가 붙은 클래스를 추상 클래스라고 한다.
추상 클래스는 아래의 특징을 가진다.
- 객체를 생성할 수 없다
- 몸체가 없는 메서드를 가질 수 있다 (추상 메서드)
추상 클래스의 서브 클래스에서는 추상 메서드를 오버라이딩하여 작성하고, 호출 시 각 서브 클래스에 적합한 메서드를 호출하기 때문에 서브 클래스를 한 곳에 모아 제어하는 시스템을 만들 수 있다. 그래서 추상 클래스를 사용하면 서브 클래스 관리가 용이해지고 이해하기 쉬운 코드를 작성할 수 있다.
인터페이스
interface 키워드를 클래스명 앞에 붙여 인터페이스를 선언할 수 있다. 인터페이스의 선언 시에는 필드는 반드시 초기화 (상수)하고 메서드 몸체는 만들 수 없다 (추상 메서드). 또한 생성자를 가질 수 없다. 인터페이스형 변수를 선언할 수 있지만 객체는 만들 수 없다. 추상 클래스와 동일하게 인터페이스 배열에 서브 클래스의 객체를 담아 한꺼번에 처리할 수 있다.
인터페이스는 다중 상속이 가능하고 슈퍼 인터페이스를 확장(extends)해서 서브 인터페이스를 선언할 수 있는데, 이러한 인터페이스를 클래스로 구현할 경우 implements를 사용한다. 인터페이스를 구현한 클래스는 슈퍼 인터페이스와 서브 인터페이스의 메소드를 모두 구현해야 한다.
'자바 > 그림으로 배우는 JAVA' 카테고리의 다른 글
[Lesson 14] 예외와 입출력 처리 (0) | 2024.07.17 |
---|---|
[Lesson 13] 대규모 프로그램의 작성 (0) | 2024.07.08 |
[Lesson 11] 새로운 클래스 (0) | 2024.07.08 |
[Lesson 10] 클래스의 이용 (0) | 2024.07.01 |
[Lesson 9] 클래스의 기능 (0) | 2024.06.29 |