본문 바로가기
Language/java

Java_Study 객체지향 프로그래밍_추상클래스

by gamxong 2022. 7. 7.

 

추상클래스란?

 

- 추상 클래스로 인스턴스를 생성할 수 없다.

- 추상클래스는 상속을 통해서 자손클래스에 의해서만 완성될 수 있다.

 

abstract class 클래스이름 {
	// ...
}

 

 

추상메서드

 

: 선언부만 작성하고 구현부는 작성하지 않은 채로 남겨 둔 것

 

/* 주석을 통해 어떤 기능을 수행할 목적으로 작성하였는지 설명한다. */
abstract 리턴타입 메서드이름();

 

 - 추상 클래스로부터 상속받는 자손클래스는 오버라이딩을 통해 조상인 추상클래스의 추상메서드를 모두 구현해주어야 한다.

 

 

abstract class Player {
	abstract void play(int pos);
	abstract void stop();
}

class AudioPlayer extends Player {
	void play(int pos) { /* 내용 생략 */ }
	void stop() { /* 내용 생략 */ }
}

abstract class AbstractPlayer extends Player {
	void play(int pos) { /* 내용 생략 */ }
}

 

 

추상클래스의 작성

 

구체화 상속을 통해 클래스를 구현, 확장하는 작업
추상화 기존의 클래스의 공통부분을 뽑아내서 공통의 조상 클래스를 만드는 것

 

abstract를 사용하지 않아도 되지만 굳이 사용하는 이유는 자손 클래스에서 추상메서드를 반드시 구현하도록 강요하기 위해서.

 

 

 

댓글