본문 바로가기

4. Programming/4.1 JAVA

27 - 추상 클래스

추상 클래스 


구체적이지 않은 클래스를 의미 버스, 스포츠카는 구체적인 차를 지칭하는데 자동차, 새 이런 것은 구체적이지 않음, 이런 것을 구현한 클래스를 '추상 클래스'라고 함



추상 클래스 정의하기


- 추상 클래스는 클래스 앞에 'abstract' 키워드를 사용하여 정의

- 추상 클래스는 미완성의 추상 메소드를 포함할 수 있음 (추상 메소드도 리턴 타입 앞에  'abstract' 키워드를 사용하여 정의)

- 메소드가 하나라도 추상 메소드인 경우, 해당 클래스는 추상 클래스가 됨

- 추상 메소드는 인스턴를 생성할 수 없음

public abstract class Car{

public abstract void stop(); public void run(){ System.out.println("자동차가 앞으로 가는 중"); } }



추상 클래스를 상속받는 클래스 생성

- 추상 클래스를 상속받은 클래스는 추상 클래스가 갖고 있는 추상 메소드를 반드시 구현해야 함

- 추상 클래스를 상속받고, 추상 클래스가 갖고 있는 추상 메소드를 구현하지 않으면 해당 클래스도 추상 클래스가 됨

public class Bus extends Car{ @Override public void stop() { System.out.println("자동차가 멈추는 중"); } }


사용 하기 

public class AbstractStudy { public static void main(String[] args) { Bus bus = new Bus(); bus.run(); bus.stop(); }

}



참고 : tryhelloworld.co.kr

'4. Programming > 4.1 JAVA' 카테고리의 다른 글

29 - 오버라이딩(overriding)  (0) 2016.06.20
28 - Super와 부모 생성자  (0) 2016.06.19
26 - 접근 제한자  (0) 2016.06.16
25 - 상속  (0) 2016.06.15
24 - 메소드 오버로딩(Overloading)  (0) 2016.06.14