Abstract Class 의미

Abstract Class란 Class 안에 추상 메소드가 하나라도 존재하는 클래스를 의미한다. 여기서 추상 메소드란 일반적인 메소드 구조인 선언부 + 구현부에서 구현부가 존재하지 않는 메소드를 추상 메소드라고 한다.

추상 메소드 작성 방법

public void mehtod(){} // 일반 메소드
public abstract void method(); // 추상 메소드

Abstract Class 작성 방법

class abstract AbstractParent{
	// 추상 클래스는 추상메소드와 일반 메소드 둘 다 존재한다.
	public void nomalAbstractParentMethod(){} 

	// 추상 메소드는 구현부가 없이 ;으로 끝난다.
	public abstract void abstractMethod();

}

class NomalClass extends AbstractParent{
	/*     Abstract Class를 상속받은 클래스는
				 Abstract Class 안에 선언되어 있는 추상 메소드를
				 무조건 오버라이딩하여 구현해야 한다.     */
	@Override
	public void abstractMethod(){
		/////	구현부 Overriding	/////
	}
}

Abstract Class 응용