颤振:继承,我需要知道的和如何,在父母,我需要在孩子中使用它,并添加更多的实现在它实现的方法


  • 这是父类,它有一个实现的方法
abstract class CommonModel {
int id;
String name;
....
Map<String, dynamic> toJson(){
final Map<String, dynamic> data = new Map<String, dynamic>();
data['Id'] = this.id;
data['Name'] = this.name;
return data;
}
}
  • 这是子类,我需要使用方法[toJson]在它的实现和添加更多的数据。

import 'package:Elnota/models/governorate.dart';
import  'package:Elnota/models/abstract_common_model.dart';
class Centeral extends CommonModel{

Governorate gov;
Centeral({
int id, 
String name, 
this.gov}) : super(id:id, name:name);
Centeral.fromJson(Map<String, dynamic> json) :super.fromJson(json){
gov = json['Gov'] != null ? new Governorate.fromJson(json['Gov']) : null;
}

Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['Gov'] = this.gov;
}

}

要理解您需要什么有点困难,但是这样如何:

@override
Map<String, dynamic> toJson() {
final data = super.toJson();
data['Gov'] = gov.toJson();
return data;
}

最新更新