Dart学习Flutter学习

Dart中的对象 类 类的创造 构造函数 命名构造函数

2020-06-17  本文已影响0人  泛滥的小愤青
自定义类
//  自定义类 ,名称首字母要大写
class Person {
  //  添加属性
   String name = "张三";
   int age = 23;

// 类里面的方法,void表示方法没有返回信息
void printInfo(){
  // 两种写法
  //  print("$name---$age"); 
    print("${this.name}----${this.age}");
  }
}

void main(){
  // 使用类 ,先实例化
  Person p1 = new Person();
  print(p1.name); // 访问name 
  p1.printInfo();  // 调用类里面的方法
}

张三
张三----23

自定义类 --- 默认构造函数(传参)
//  自定义类 ,名称首字母要大写
class Person {
  //  添加属性
  String name;
  int age;
  
  // 初始化运行-----默认构造函数
  // 构造函数 传参
  Person(String name,int age){
  //  print("构造函数内容,方法在实例化的时候触发");
    // 动态制定属性
    this.name = name;
    this.age = age;
  }
  
  // 类里面的方法,void表示方法没有返回信息
void printInfo(){
  print("${this.name}----${this.age}");
  }
}

void main(){
  // 使用类 ,先实例化
  // 类可以实例化 多次
  Person p1 = new Person('张三',33);
  p1.printInfo();  // 调用类里面的方法
  
  Person p2 = new Person('李四',44);
  p2.printInfo();
}

张三----33
李四----44

默认构造函数 -- 简写
 Person(this.name,this.age);
命名构造函数(可以多个)
//  now()  就是命名的
//  void main(){
//    var d = DateTime.now();
//    print(d);  
//  }
//  自定义类 ,名称首字母要大写
class Person {
  String name;
  int age;
  // 默认构造函数的简写
  Person(this.name,this.age);
  
  Person.now(){
    print("我是命名构造函数!");
  }

  void PrintInfo(){
    print("${this.name}----${this.age}");
  }
}

void main(){
//  Person p1 = new Person('张三',11); // 默认实例化类的时候,调用的是默认构造函数
//  p1.PrintInfo();
  Person p1 = new Person.now();
}

我是命名构造函数!

命名构造函数(传参)
//  自定义类 ,名称首字母要大写
class Person {
  String name;
  int age;
  // 默认构造函数的简写
  Person(this.name,this.age);
  
  Person.now(){
    print("我是命名构造函数!");
  }
  
  Person.setInfo(String name,int age){
    this.name = name;
    this.age = age;
  }
  
  void PrintInfo(){
    print("${this.name}----${this.age}");
  }
}



void main(){
  Person p1 = new Person.setInfo('王五',18);
   p1.PrintInfo();
}

王五----18

抽离

  • 单独类可以抽离一个文件(模块)Person.dart,用import引用即可
  • 好处:模块化,实现多人开发
上一篇 下一篇

猜你喜欢

热点阅读