Dart 中的类

一、类的定义
1、关键词 class
示例

class Animal
{
}

二、继承
1、关键词 extend
示例

//父类
class Animal {
  run() {
    print("动物都会跑!");
  }
}
//子类
class Dog extends Animal 
{

}

三、抽象类与抽象方法
1、Dart中抽象类使用abstract关键词定义

abstract class Animal {

}

2、没用方法体的就是抽象方法

abstract class Animal {
   eat();//抽象方法
}

四、接口
1、Dart 中普通类和抽象类都可以当作接口,但是接口是一种规范,所有通常情况使用抽象类当作接口,里面定义必须让子类实现的抽象方法。
关键词 implements@override 表示重写
示例

class Cat implements Animal{
  @override
  eat() {
    throw UnimplementedError();
  }
}

2、继承多个接口示例

abstract class A{
eat();
}
abstract class B{
  run();
}
//C类继承了A类和B类
abstract class C implements A,B{
  @override
  eat() {
    throw UnimplementedError();
  }

  @override
  run() {
    throw UnimplementedError();
  }
}

注:如果A、B有一样的方法,C中调用时,后面继承的接口方法会覆盖前面的方法,即最后调用的是B的方法

五、泛型类、泛型方法、泛型接口
1、泛型类

//定义
class GetInfo<T>{
  
}

2、泛型方法

//定义
T GetData<T>(T value) {
  return value;
}
//调用泛型方法
GetData<String>("你好,Dart")
原文地址:https://www.cnblogs.com/qingheshiguang/p/14440601.html