如何解决Dart:使用 mixin 外包抽象方法的实现
我的目标是用这个来构建我的代码。想法是将一个实现外包给其他地方,这样您的主类就不会因为太多方法而过载。 Mixins 接缝是完美的! 示例:
abstract class Animal {
String printAllPropeties();
}
class Elephant extends Animal {
Trunk trunk; // Trunk: some Datastructure
@override
String printAllPropeties() => trunk.toString();
}
class Bird extends Animal {
Wing wing; // Wing: some Datastrukture
@override
String printAllPropeties() => wing.toString();
}
但现在我想将 printAllPropeties()
外包给每个类的 mixin:
abstract class Animal {
String printAllPropeties();
}
class Elephant extends Animal with ElephantAllPropeties {
Trunk trunk; // Trunk: some Datastructure
}
mixin ElephantAllPropeties on Elephant {
@override
String printAllPropeties() => trunk.toString();
}
class Bird extends Animal with BirdAllPropeties {
Wing wing; // Wing: some Datastrukture
}
mixin BirdAllPropeties on Bird {
@override
String printAllPropeties() => wing.toString();
}
但这不会像现在这样工作,因为 mixin 会实现自己。 那么有没有其他方法,或者根本不可能,或者用其他方法可能??
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。