[Dart] Mixin

AI·2023년 11월 5일

생성자가 없는 클래스
클래스에 프로퍼티들을 추가하거나 할 때 사용
여러 클래스에 재사용이 가능하다

class Strong{
  final double strenghtLevel = 1500.99;
}
class QuickRunner{
  void runQuick(){
    print("ruuuuuuuuun!");
  }
}
class Tall{
  final double height = 1.99;
}

enum Team { blue, red }
class Player with Strong, QuickRunner,Tall{
  final Team team;
  
  Player({
    required this.team,
    required String name,
  }) : super(name:name);//super(name)
  
  
  void sayHello() {
    super.sayHello();
    print('and I paly for ${team}');
  }
}
class Horse with Strong, QuickRunner {}
class Kid with QuickRunner {}

void main() {
  var player = Player(team:Team.red, name:'dart');
  player.runQuick();
}

java의 implements와 유사한건가?

0개의 댓글