[Dart] 클래스 제한자
Updated:
개요
- class 키워드 앞에 명시
- 해당 클래스를 사용하는 파일이 아닌 다른 파일에 선언해야 동작
- base
- base 클래스의 기능을 강제하는 제한자
- 해당 클래스는 상속만 가능
- 자식 클래스는 base, final 또는 sealed 제한자를 함께 사용해야 함
- final
- 같은 파일에서만 상속과 재정의 가능
- base 제한자의 모든 기능을 포함
- interface
- 재정의만 할 수 있도록 제한
- sealed
- 파일 외부에서 상속/재정의/인스턴스화를 할 수 없도록 제한
- mixin
- 일반 mixin과 같은 역할을 하면서 상속 가능
예제
- 코드
-
base class Base {} final class Final {} interface class Interface {} sealed class Sealed {} mixin class Mixin {}
-