Dart类的继承

2020-09-03 11:07:11 浏览数 (1)

代码语言:javascript复制
//定义一个父类
class Person {
  var name;
  var age;
  Person(this.name, this.age);
  getInfo() {
    print("${this.name},${this.age}");
  }
}

//定义Web类继承Person类,可以使用Person中的所有成员
//使用super关键字可以对父类进行传参
class Web extends Person {
  var sex;
  Web(name, age, sex) : super(name, age) {
    this.sex = sex;
  }
  // 在子类可以延伸方法
  run() {
    super.getInfo(); //子类调用父类的方法
    print("${this.name},${this.age},${this.sex}"); //子类调用父类的属性
  }

  // 覆写父类的方法,
  @override //建议写上
  getInfo() {
    print("姓名:${this.name},年龄:${this.age}");
  }
}

main() {
  var w = new Web("张三", '20', '男');
  w.getInfo();
  w.run();
}

0 人点赞