Created with <3 with dartpad.dev.
Created
October 5, 2023 15:09
-
-
Save MelvinRB27/4c405ac12d7df4c7c0723c90363c0e2c to your computer and use it in GitHub Desktop.
mixins
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
void main() { | |
final batman = Murcielago(); | |
batman.volar(); | |
batman.caminar(); | |
final donald = Pato(); | |
donald.nadar(); | |
donald.caminar(); | |
donald.volar(); | |
} | |
abstract class Animal {} | |
abstract class Mamifero extends Animal {} | |
abstract class Ave extends Animal {} | |
abstract class Pez extends Animal {} | |
abstract mixin class Caminante { | |
void caminar() => print("estoy caminando"); | |
} | |
abstract mixin class Volador { | |
void volar() => print("estoy volando"); | |
} | |
abstract mixin class Nadante { | |
void nadar() => print("estoy nadando"); | |
} | |
class Delfin extends Mamifero with Nadante {} | |
class Murcielago extends Mamifero with Caminante, Volador {} | |
class Gato extends Mamifero with Caminante, Nadante {} | |
class Paloma extends Ave with Caminante, Volador {} | |
class Pato extends Ave with Caminante, Volador, Nadante {} | |
class Tiburon extends Pez with Nadante {} | |
class PezVolador extends Pez with Nadante, Volador {} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment