반응형
간단하게 얘기하면... 메서드는 보통 선언부와 구현부가 있다. 그런데 추상메서드는 선언부는 있지만 구현부가 없다. 이런 추상메서드를 가지고 있는 클래스를 추상클래스라 부른다.
예시 코드
abstract class Player { //추상 클래스(미완성 클래스, 미완성 설계도)
abstract void play(int pos); //추상 메서드(미완성 메서드)
abstract void stop(); //추상 메서드 (선언부만 있고 구현부{}가 없는 메서드
}
//추상클래스는 상속을 통해 완성해야 객체 생성이 가능함
class AudioPlayer extends Player {
void play(int pos) {System.out.println(pos+"위치부터 실행합니다.");};
void stop() {System.out.println("실행을 멈춥니다.");};
}
public class PlayerTest {
public static void main(String[] args) {
//player p = new Player(); //추상 클래스의 객체 생성
//AudioPlayer ap = new AudioPlayer();
Player ap = new AudioPlayer(); //조상으로 바꿔도 작동이 된다. 다형성
ap.play(100);
ap.stop();
}
}
반응형
'Java' 카테고리의 다른 글
HashMap 개념 및 예제 (2) | 2023.04.21 |
---|---|
Java 예외처리(exception handling) (1) | 2023.04.21 |
Java 인터페이스(interface)란 무엇인가? (1) | 2023.04.09 |
Java 매개변수의 다형성 예제 (2) | 2023.04.08 |
Java println 출력이 되지 않는 이유 (0) | 2023.03.30 |