Dart

Dart_23 : Class_Abstract Class

kimyongjun0129 2024. 11. 15. 11:11

* 추상 클래스로는 직접 객체를 생성할 수 없다.

* 추상 클래스는 다른 클래스들이 직접 구현 해야하는 메소드들을 모아놓은 청사진과 같다.

 

#1 추상 클래스 생성

- 추상 클래스를 생성할 때, 이 추상 클래스를 상속받는 자식 클래스가 필수적으로 구현해야하는 메서드를 완성시키지 않은 상태로 포함하여 생성한다.

 

#2 추상 클래스 상속

- 다음과 같이 Human 추상 클래스를 상속받았는데, 앞서 보여준 walk 함수가 Player 클래스에 정의되어있지 않기 때문에 Dart에서 이를 오류를 통해 알려준다.

(추상화 클래스는 특정 메소드를 구현하도록 강제한다.)

(따라서 추상화 클래스를 보고도 자식 클래스가 어떤 메서드를 가지고 있는지 유추할 수 있다.)

 

 

#3 추상화 메서드 구현

- 다음과 같이 추상화 클래스에 있는 walk 메서드를 구현함으로써 오류가 사라진 것을 볼 수 있다.