일부 다형성 보장
객체 지향언어가 발전되면서 프로그램에 일관성과 통일성을 부여하여야 했다.
그래서 나온것들이 추상 클래스와 인터페이스 개념이다.
추상 클래스는 비슷한 기능을 가진 메소드 등을 하나로 묶어서 사용하기 위해서 나온 개념이다.
추상클래스는 구체적으로 메소드가 구현되지 않은 불완전한 메소드로 구현된 클래스 이다.
추상 클래스는 다형성 보장을 위해 사용 된다.
메소드의 구현이 없고 , 선언만 되어 있는 형태로 되어 있다.
따라서 이 클래스를 상속 받는 클래스는 반드시 구현해야 한다.
2.형태
abstract class 클래스명 {
abstract 반환타입 메소드명();
}
추상 메서드는 abstract 반환타입 메소드명(); 의 형태로 쓰인다.
하나의 이상의 추상 메소드를 포함 하여야 한다.
추상 메서드 뿐만 아니라 일반 구현된 메서드도 포함 할 수 있다.
package com.java.poly02.mycar;
//추상 클래스(abstract):구체화 되지 않은 미완성 클래스다 따라서 구현클래스를 만들어 주어야 한다.
//프로그램의 일관성,통일성을 위한 클래스이다.
//따라서 추상메서드를 중심으로 이루어졌다.
public abstract class Car { //1.abstract 키워드를 붙힌다.
//private String carName;
//2.추상 메서드를 만든다.
public abstract void openDoor();
//{ 추상메서드:구현부가 없는 미완성 메서드
//
//}
//3.일반메서드도 만들수 있다.
public void startOfCar() {
System.out.println("자동차에 시동을 건다.");
}
}