Updated:

less than 1 minute read

개요

  • 특정 클래스에 원하는 기능들만 골라 놓을 수 있는 기능
  • 특정 클래스를 지정해서 속성들을 정의
  • 지정한 클래스를 상속하는 클래스에서도 사용 가능
  • 한개의 클래스에 여러 개의 믹스인 적용 가능
  • mixin, with 키워드를 사용
  • on 키워드로 사용할 수 있는 부모 클래스를 제한 가능


예제

  • 코드
    • mixin Mixin {
        void func() {
          print('1');
        }
      }
             
      class Test with Mixin {}
             
      class Base {}
             
      mixin BaseMixin on Base {
        void func() {
          print('2');
        }
      }
             
      class Derived extends Base with BaseMixin {}
             
      void main() {
        Test test = Test();
        test.func();
             
        Derived derived = Derived();
        derived.func();
      }
      
  • 실행 결과
    • 1
      2