日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Flutter】Dart 面向对象 ( 命名构造方法 | 工厂构造方法 | 命名工厂构造方法 )

發(fā)布時(shí)間:2025/6/17 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Flutter】Dart 面向对象 ( 命名构造方法 | 工厂构造方法 | 命名工厂构造方法 ) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 一、 命名構(gòu)造方法
  • 二、 工廠構(gòu)造方法
  • 三、 命名工廠構(gòu)造方法
  • 四、 相關(guān)資源





一、 命名構(gòu)造方法



命名構(gòu)造方法 :

  • 定義格式 : 類名.方法名()
Student.cover(Student student):super(student.name, student.age);
  • 父類構(gòu)造函數(shù) : 如果父類沒有默認(rèn)構(gòu)造函數(shù), 子類必須調(diào)用父類的構(gòu)造函數(shù) ;
  • 方法體 : 命名構(gòu)造方法與普通構(gòu)造函數(shù)一樣 , 可以有方法體 , 也可以不寫方法體 ;
// 命名構(gòu)造方法也可以有方法體Student.init(Student student):super(student.name, student.age){print("命名構(gòu)造方法 : name : ${student.name}, age : ${student.age}");}

代碼示例 :

// 定義 Dart 類 // 與 Java 語言類似, 所有的類默認(rèn)繼承 Object 類 class Person{// 定義變量String name;int age;// 標(biāo)準(zhǔn)構(gòu)造方法, 下面的方法是常用的構(gòu)造方法寫法Person(this.name, this.age);// 重寫父類的方法@overrideString toString() {return "$name : $age";} }// 繼承 class Student extends Person{// 命名構(gòu)造方法// 定義格式 : 類名.方法名()// 父類構(gòu)造函數(shù) : 如果父類沒有默認(rèn)構(gòu)造函數(shù), 子類必須調(diào)用父類的構(gòu)造函數(shù)Student.cover(Student student):super(student.name, student.age);// 命名構(gòu)造方法也可以有方法體Student.init(Student student):super(student.name, student.age){print("命名構(gòu)造方法 : name : ${student.name}, age : ${student.age}");}}



二、 工廠構(gòu)造方法



工廠構(gòu)造方法就是 單例模式 , 工廠構(gòu)造方法作用是返回之前已經(jīng)創(chuàng)建的對象 , 之前創(chuàng)建對象時(shí)需要緩存下來 ;

工廠構(gòu)造方法規(guī)則 : 在構(gòu)造方法前添加 factory 關(guān)鍵字 ;


定義了工廠構(gòu)造方法的類 :

// 使用工廠構(gòu)造方法實(shí)現(xiàn)單例模式 // 工廠構(gòu)造方法就是單例模式 // 工廠構(gòu)造方法作用是返回之前已經(jīng)創(chuàng)建的對象 , 之前創(chuàng)建對象時(shí)需要緩存下來 ; class Student2{// 靜態(tài)成員static Student2 instace;// 工廠構(gòu)造方法factory Student2(){if(instace == null){// 調(diào)用命名構(gòu)造方法創(chuàng)建 Student2 對象instace = Student2.init();}// 返回單例對象return instace;}// 命名構(gòu)造方法Student2.init(); }

測試工廠構(gòu)造方法 :

factoryConstructorDemo(){Student2 stu1 = Student2();print("stu1 創(chuàng)建完成 : ${stu1}");Student2 stu2 = Student2();print("stu2 創(chuàng)建完成 : ${stu2}");print("對比 stu1 與 stu2 : stu1 == stu2 : ${stu1 == stu2}");}

執(zhí)行結(jié)果 :

I/flutter (32158): stu1 創(chuàng)建完成 : Instance of 'Student2' I/flutter (32158): stu2 創(chuàng)建完成 : Instance of 'Student2' I/flutter (32158): 對比 stu1 與 stu2 : stu1 == stu2 : true



三、 命名工廠構(gòu)造方法



命名工廠構(gòu)造方法格式 :

factory 類名.方法名

命名工廠構(gòu)造方法可以有 返回值 ;

如果類中有 final 修飾的成員 , 在命名構(gòu)造方法中必須對其進(jìn)行初始化 ;

但是在命名工廠構(gòu)造方法中 , 可以不初始化 final 類型成員


命名工廠構(gòu)造方法示例 :

// 繼承 class Student extends Person{// 私有變量, 以下劃線開始的變量是私有變量int _grade;String school;String city;String address;// 父類構(gòu)造函數(shù)調(diào)用 : 如果父類有非空參數(shù)的構(gòu)造函數(shù), 子類必須實(shí)現(xiàn)相同參數(shù)的構(gòu)造函數(shù)// 如果該類有父類 , 那么先調(diào)用父類的構(gòu)造方法 , 完成父類的初始化// 然后才能完成自己的初始化//// this.school 指定自有參數(shù)// {this.school} 是可選參數(shù), 可選參數(shù)必須在構(gòu)造函數(shù)參數(shù)列表中最后一個(gè)//// 默認(rèn)參數(shù) : 可選參數(shù)中如果用戶不初始化該可選參數(shù) , 那么為其指定一個(gè)默認(rèn)值// {this.city = "北京"} 指定了如果用戶不初始化 city 變量, 那么為其初始化 "北京" 字符串值//// 初始化列表 : 冒號后面的內(nèi)容就是初始化列表// 父類構(gòu)造器也是初始化列表// 除了父類構(gòu)造方法之外 , 還可以在子類構(gòu)造方法體之前初始化示例變量// 不同的初始化實(shí)例變量之間使用逗號隔開//// 父類構(gòu)造方法 : 如果父類沒有默認(rèn)構(gòu)造方法 (無參構(gòu)造方法) ,// 必須在初始化列表中調(diào)用父類構(gòu)造函數(shù) , super(name, age) ;//// 構(gòu)造方法方法體 : 可以省略 ;Student(this._grade, String name, int age,{this.school, this.city = "北京"}): address = "北京市海淀區(qū)" ,super(name, age);// 命名構(gòu)造方法// 定義格式 : 類名.方法名()// 父類構(gòu)造函數(shù) : 如果父類沒有默認(rèn)構(gòu)造函數(shù), 子類必須調(diào)用父類的構(gòu)造函數(shù)Student.cover(Student student):super(student.name, student.age);// 命名構(gòu)造方法也可以有方法體Student.init(Student student):super(student.name, student.age){print("命名構(gòu)造方法 : name : ${student.name}, age : ${student.age}");}// 命名工廠構(gòu)造方法 : factory 類名.方法名// 命名工廠構(gòu)造方法可以有返回值// 如果類中有 final 修飾的成員 , 在命名構(gòu)造方法中必須對其進(jìn)行初始化// 但是在命名工廠構(gòu)造方法中 , 可以不初始化 final 類型成員factory Student.init2(){return Student(1, "Tom", 18);}}



四、 相關(guān)資源



參考資料 :

  • Flutter 官網(wǎng) : https://flutter.dev/
  • Flutter 開發(fā)文檔 : https://flutter.cn/docs ( 強(qiáng)烈推薦 )
  • 官方 GitHub 地址 : https://github.com/flutter
  • Flutter 中文社區(qū) : https://flutter.cn/
  • Flutter 實(shí)用教程 : https://flutter.cn/docs/cookbook
  • Flutter CodeLab : https://codelabs.flutter-io.cn/
  • Dart 中文文檔 : https://dart.cn/
  • Dart 開發(fā)者官網(wǎng) : https://api.dart.dev/
  • Flutter 中文網(wǎng) ( 非官方 , 翻譯的很好 ) : https://flutterchina.club/ , http://flutter.axuer.com/docs/
  • Flutter 相關(guān)問題 : https://flutterchina.club/faq/ ( 入門階段推薦看一遍 )

博客源碼下載 :

  • GitHub 地址 : https://github.com/han1202012/flutter_app_hello ( 隨博客進(jìn)度一直更新 , 有可能沒有本博客的源碼 )

  • 博客源碼快照 : https://download.csdn.net/download/han1202012/15381508 ( 本篇博客的源碼快照 , 可以找到本博客的源碼 )

總結(jié)

以上是生活随笔為你收集整理的【Flutter】Dart 面向对象 ( 命名构造方法 | 工厂构造方法 | 命名工厂构造方法 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中国大陆高清aⅴ毛片 | 91亚洲国产| 久久亚洲精品小早川怜子 | 老司机午夜免费福利 | 久久aaaa片一区二区 | 欧美激情成人网 | 欧美激情视频二区 | 亚洲天堂欧美 | 999国产精品亚洲77777 | 凹凸精品一区二区三区 | 色一情一区二区三区四区 | 天天干天天添 | av播放网站| 国产精品无码毛片 | 中文字幕观看av | 深爱综合网| 久久久久久国产精品三区 | 久久麻豆av| 尤物网站在线播放 | 日本wwwwww| 无码h肉动漫在线观看 | 69式视频 | 国产亚洲精品一区二区三区 | 少妇高潮一区二区三区99欧美 | 国产午夜啪啪 | 国产一级做a爰片在线看免费 | 999色综合 | av大片网| 成人涩涩软件 | 婷婷伊人综合 | 国产视频一区二区三区在线播放 | 中文字幕日本在线 | 高潮又黄又刺激 | 黄色av网址在线观看 | 亚洲欧美一区二区视频 | 日韩欧美在线观看 | 欧美成人精品在线视频 | 精品一区二区三区国产 | 国产婷婷色一区二区 | 一级欧美在线 | 一区二区三区不卡在线观看 | 四虎最新站名点击进入 | www.色香蕉| 手机看片中文字幕 | 亚洲综合丁香 | 久久99久久精品 | 超碰女人 | 亚洲精品久久久久久久久久久 | 亚州色图欧美色图| 嫩模被强到高潮呻吟不断 | 99热一区二区 | 亚洲欧美一区二区三区在线观看 | 最新日韩在线 | 黄色网免费观看 | 免费污片在线观看 | 99精品欧美一区二区蜜桃免费 | 四虎综合网| 岛国福利视频 | 国产精品久久久久久久免费大片 | 国产美女特级嫩嫩嫩bbb | 97国产在线观看 | 久久视频免费观看 | 欧美另类xxxx野战 | 久久99精品国产麻豆91樱花 | 亚洲精品一区在线 | 伊人视屏 | av噜噜噜 | 91久久精品视频 | 精品视频在线看 | tube日本69第一次 | 无码粉嫩虎白一线天在线观看 | 美国黄色一级大片 | 激情视频亚洲 | 奇米久久| 天堂草在线观看 | 3d动漫精品啪啪一区二区三区免费 | 大陆极品少妇内射aaaaa | 日本妈妈3| 西野翔夫の目の前で犯在线 | 欧美r级在线观看 | 成人a免费 | 国产91在线高潮白浆在线观看 | 亚洲色图1 | 黄色三级免费观看 | 一本大道伊人av久久综合 | 国产情侣露脸自拍 | 色爱av | 越南毛茸茸的少妇 | 亚洲午夜18毛片在线看 | 国产伦精品一区二区三区网站 | 色图色小说 | 久久福利免费视频 | 免费av网址在线 | 99精品欧美一区二区三区综合在线 | 久久亚洲国产成人精品性色 | 一区二区三区视频在线播放 | 美女考逼 | 亚洲综合在线观看视频 | 能看毛片的网站 |