Skip to content

Instantly share code, notes, and snippets.

@alandalegend
Created September 17, 2020 21:57
Show Gist options
  • Save alandalegend/1fe146de137aaf4918f5eaa5cd138c43 to your computer and use it in GitHub Desktop.
Save alandalegend/1fe146de137aaf4918f5eaa5cd138c43 to your computer and use it in GitHub Desktop.
Mixins Dart
void main() {
final pato = new Pato();
pato.volar();
final pezVolador = new PezVolador();
pezVolador.nadar();
}
abstract class Volador {
void volar() => print("Estoy volando");
}
abstract class Caminante {
void caminar() => print("Estoy caminando");
}
abstract class Nadador {
void nadar() => print("Estoy nadando");
}
abstract class Mamifero extends Animal {}
abstract class Ave extends Animal {}
abstract class Pez extends Animal {}
abstract class Animal {
String nombre;
}
class Delfin extends Mamifero with Nadador {}
class Murcielago extends Mamifero with Volador, Caminante {}
class Gato extends Mamifero with Caminante {}
class Paloma extends Ave with Volador, Caminante {}
class Pato extends Ave with Nadador, Volador, Caminante {}
class Tiburon extends Pez with Nadador {}
class PezVolador extends Pez with Nadador, Volador {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment