美文网首页
Flutter(五)工厂构造和单例

Flutter(五)工厂构造和单例

作者: 学_iOS | 来源:发表于2021-12-08 17:18 被阅读0次

感君一回顾,思君朝与暮。

<一>dart的工厂构造和单例

  • factory的官方描述:当你使用factory关键词时,你能控制在使用构造函数时,并不总是创建一个新的该类的对象,比如它可能会从缓存中返回一个已有的实例,或者是返回子类的实例。
    值得注意的是:构造函数不能有返回值,而factory必须有
    ///类
    class FactoryClass {
    static FactoryClass? _instance;
    // 单例构造方法
    // factory FactoryClass() {
    //   if(_instance == null) {
    //     _instance = FactoryClass._init();
    //   }
    //   return _instance!;
    // }
    
    // 简化
    // factory FactoryClass() {
    //   return _instance ??= FactoryClass._init();
    // }
    
    // 二次简化
    factory FactoryClass() => _instance ??= FactoryClass._init();
    
    // 私有的命名构造函数
    FactoryClass._init();
    }
    

<二>初始化列表

  • 初始化列表的目的:给final变量赋值,校验传递参数的正确性。
    class person {
    
    final String _name;//私有属性
    int age;
    num height;
    
    person(String name,this.age,this.height):_name = name,assert 
    (age>0),assert(height>180){
    
    print('name:$_name\nage::$age,\nnum:$height');
    }
    void printAction(){
    print('name:$_name\nage::$age,\nnum:$height');
    }
    }
    
  • 我们定义一个类,我们私有属性不想暴漏的话,我们可以自定义一个行参,之后赋值给私有属性,我们也可以校验参数传递的正确性,如果参数条件不满足的话就会报错

相关文章

  • Flutter(五)工厂构造和单例

    感君一回顾,思君朝与暮。 <一>dart的工厂构造和单例 factory的官方描述:当你使用factory关键词时...

  • 常用设计模式

    1.构造函数 2.工厂模式 factory 3.单例模式 singleton 匿名函数 ==>lambda单例只返...

  • 前端设计模式

    1.写出 构造函数模式、混合模式、模块模式、工厂模式、单例模式、发布订阅模式的范例。 工厂模式 模块模式 构造函数...

  • 设计模式

    ** 写出 构造函数模式、混合模式、模块模式、工厂模式、单例模式、发布订阅模式的范例。** 单例模式 var P...

  • Flutter 之 构造函数和单例

  • 设计模式之创建型

    创建型指的是对象模型的创建。 有以下五种方式: 单例、原型、工厂、抽象工厂、建造者。 单例有懒汉模式和饿汉模式,区...

  • 前端常见设计模式

    构造函数模式 模块模式 工厂模式 混合模式 单例模式 订阅发布模式

  • 常见的6种JavaScript设计模式

    构造函数模式 工厂模式 模块模式 混合模式 单例模式 发布订阅模式

  • 常见的设计模式

    构造函数模式 混合模式 模块模式 工厂模式 单例模式 发布订阅模式

  • js常见设计模式

    构造函数模式: 工厂模式: 模块模式 混合模式 单例模式 发布订阅模式

网友评论

      本文标题:Flutter(五)工厂构造和单例

      本文链接:https://www.haomeiwen.com/subject/oodtfrtx.html