1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ryanpenn-dart_in_action

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
08_inheritance.dart 1.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
ryanpenn Отправлено 27.03.2019 05:55 9deeecf
///
/// inheritance.dart
///
main(List<String> args) {
Animal animal = Dog('black');
animal.eat();
(animal as Dog).bark();
if (animal is Duck) {
print('Yes');
} else {
print('No');
}
Duck duck = Duck('white');
duck.eat();
print(duck is Animal);
YellowFlyDuck yellowFlyDuck = YellowFlyDuck();
yellowFlyDuck.eat();
yellowFlyDuck.flyInSky();
yellowFlyDuck.count();
yellowFlyDuck.output();
print(Duck.type);
// print(YellowFlyDuck.type);
}
class Animal {
String color;
eat() {
print('Eat!');
}
}
class Dog extends Animal {
Dog(String color) {
super.color = color;
}
@override
eat() {
print('$color dog eats meat.');
}
void bark() {
print("Bark !");
}
}
class Duck extends Animal {
static String type = "DUCK";
Duck(String color) {
super.color = color;
}
@override
eat() {
print('$color duck eats rice.');
}
}
abstract class Fly {
void flyInSky();
}
class CountableMixin {
int _count = 0;
void count() {
_count++;
}
output() {
print('count: $_count');
}
}
class YellowFlyDuck extends Duck with CountableMixin implements Fly {
YellowFlyDuck() : super('Yellow');
@override
void flyInSky() {
print('$color duck Fly!');
}
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/ryanpenn-dart_in_action.git
git@api.gitlife.ru:oschina-mirror/ryanpenn-dart_in_action.git
oschina-mirror
ryanpenn-dart_in_action
ryanpenn-dart_in_action
master