昆明做网站建设的公司哪家好,画画外包网站,品牌形象策划,杭州商城型网站建设文章目录 类的构造函数_()函数dart中构造函数定义 类的构造函数
类的构造函数有两种#xff1a; 1#xff09;默认构造函数#xff1a; 当实例化对象的时候#xff0c;会自动调用的函数#xff0c;构造函数的名称和类的名称相同#xff0c;在一个类中默认构造函数只能由… 文章目录 类的构造函数_()函数dart中构造函数定义 类的构造函数
类的构造函数有两种 1默认构造函数 当实例化对象的时候会自动调用的函数构造函数的名称和类的名称相同在一个类中默认构造函数只能由一个。 2命名构造函数 当通过指定的命名构造函数实例化对象时会调用改命名构造函数命名构造函数可以有多个。
class Persion { //persion为类名
String name; //属性
int age;
Persion(this.name, this.age); //默认构造函数当实例化一个对象时会自动调用到该函数
Persion.now() {
print(这是一个命名构造函数);
}
getInfo() { //方法
print(name : $name age : $age);
}
}
void main() {
Persion man new Persion(ShenZhen, 40); //调用了默认构造函数
man.getInfo();
Persion man2 new Persion.now(); //实例化对象的时候调用了命名构造函数
}_()函数
DatabaseHelper._();: 这是一个私有的构造函数用于确保这个类不能被外部直接实例化。通过使用下划线_作为构造函数的名称的前缀该构造函数变成了私有的只能在类内部使用。这是为了实现单例模式singleton pattern。
static final DatabaseHelper dbhelper DatabaseHelper.();: 这行代码创建了一个静态的、不可变的DatabaseHelper实例命名为dbhelper。由于构造函数是私有的外部无法直接实例化DatabaseHelper因此这个实例是通过调用DatabaseHelper.()来获取的。这种方式确保在整个应用程序中只有一个数据库助手实例实现了单例模式。
单例模式的目的是确保一个类只有一个实例并提供一个全局访问点。在这个例子中单例模式可能是为了避免在应用程序中多次创建数据库连接以提高性能或确保数据一致性。
DatabaseHelper.()的私有构造函数和static final DatabaseHelper dbhelper DatabaseHelper.();的方式是为了创建一个全局唯一的DatabaseHelper实例以便在整个应用程序中共享数据库连接或其他资源。
dart中构造函数定义
构造函数的名称通常与类名相同这是 Dart 中的一种约定。但如果你愿意你可以为构造函数取一个不同的名字只要没有指定返回类型它仍然是构造函数。
在Dart中如果你定义一个没有显示构造函数的类Dart会为你生成一个默认的无参构造函数。然而当你定义了任何构造函数时无论是否有参数Dart将不再提供默认构造函数。
在你的代码中DatabaseHelper._(); 是一个私有的构造函数它没有参数因此它是一个无参构造函数。当你创建一个类的实例时Dart会调用这个构造函数。
在这里
DatabaseHelper._(); // 单例模式这个构造函数被调用但由于它是私有的不能直接在类外部使用只能在类内部被调用。在这种情况下它可能被用于在类内部初始化一些数据或资源。
而在这一行
static final DatabaseHelper dbhelper DatabaseHelper._();dbhelper 是一个静态的、不可变的类变量它被初始化为 DatabaseHelper._() 调用的结果。这样就创建了一个全局唯一的 DatabaseHelper 实例并通过 dbhelper 这个静态变量对其进行引用。这也就是为什么这个模式被称为单例模式因为整个应用程序中只有一个实例。 结束语 Flutter是一个由Google开发的开源UI工具包它可以让您在不同平台上创建高质量、美观的应用程序而无需编写大量平台特定的代码。我将学习和深入研究Flutter的方方面面。从基础知识到高级技巧从UI设计到性能优化欢饮关注一起讨论学习共同进入Flutter的精彩世界