【Flutter】Dart 面向对象 ( get 方法 | set 方法 | 静态方法

简介: 【Flutter】Dart 面向对象 ( get 方法 | set 方法 | 静态方法

文章目录

一、 get 和 set 方法

二、 静态方法

三、 相关资源





一、 get 和 set 方法


get 方法 : 置私有字段的 get 方法 , 让外界可以访问类对象的私有成员 ;


格式 : 返回值类型 get 方法名 { 方法体 }

代码示例 :

// get 方法 : 设置私有字段 achievement 的 get 方法,
  //            让外界可以访问 Person 对象的 _achievement 私有成员
  int get achievement => _achievement;



set 方法 : 置私有字段的 set 方法 , 让外界可以设置类对象的私有成员 ;


格式 : set 方法名 ( 参数 ) { 方法体 }

代码示例 :

 

// set 方法 : 设置私有字段 achievement 的 set 方法,
  //            让外界可以设置 Person 对象的 _achievement 私有成员值
  set achievement(int achievement){
    _achievement = achievement;
  }



代码示例 :


// 定义 Dart 类
// 与 Java 语言类似, 所有的类默认继承 Object 类
class Person{
  // 定义变量
  String name;
  int age;
  // 私有字段
  int _achievement;
  // 标准构造方法, 下面的方法是常用的构造方法写法
  Person(this.name, this.age);
  // ★ get 方法 : 设置私有字段 achievement 的 get 方法,
  //            让外界可以访问 Person 对象的 _achievement 私有成员
  int get achievement => _achievement;
  // ★ set 方法 : 设置私有字段 achievement 的 set 方法,
  //            让外界可以设置 Person 对象的 _achievement 私有成员值
  set achievement(int achievement){
    _achievement = achievement;
  }
  // 重写父类的方法
  @override
  String toString() {
    return "$name : $age";
  }
}






二、 静态方法


使用 static 关键字标识的方法是静态方法 ;


静态方法可以使用 类名.静态方法名 进行调用 , 不必通过对象调用 ;


静态方法示例 :


// 定义 Dart 类
// 与 Java 语言类似, 所有的类默认继承 Object 类
class Person{
  // 定义变量
  String name;
  int age;
  // 私有字段
  int _achievement;
  // 标准构造方法, 下面的方法是常用的构造方法写法
  Person(this.name, this.age);
  // get 方法 : 设置私有字段 achievement 的 get 方法,
  //            让外界可以访问 Person 对象的 _achievement 私有成员
  int get achievement => _achievement;
  // set 方法 : 设置私有字段 achievement 的 set 方法,
  //            让外界可以设置 Person 对象的 _achievement 私有成员值
  set achievement(int achievement){
    _achievement = achievement;
  }
  // ★ 静态方法 , 通过类名调用
  static log(){
    print("log");
  }
  // 重写父类的方法
  @override
  String toString() {
    return "$name : $age";
  }
}





三、 相关资源


参考资料 :


Flutter 官网 : https://flutter.dev/

Flutter 开发文档 : https://flutter.cn/docs ( 强烈推荐 )

官方 GitHub 地址 : https://github.com/flutter

Flutter 中文社区 : https://flutter.cn/

Flutter 实用教程 : https://flutter.cn/docs/cookbook

Flutter CodeLab : https://codelabs.flutter-io.cn/

Dart 中文文档 : https://dart.cn/

Dart 开发者官网 : https://api.dart.dev/

Flutter 中文网 ( 非官方 , 翻译的很好 ) : https://flutterchina.club/ , http://flutter.axuer.com/docs/

Flutter 相关问题 : https://flutterchina.club/faq/ ( 入门阶段推荐看一遍 )


博客源码下载 :


GitHub 地址 : https://github.com/han1202012/flutter_app_hello ( 随博客进度一直更新 , 有可能没有本博客的源码 )


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


目录
相关文章
|
2月前
|
Dart
如何在 Flutter 项目中使用 Dart 语言?
如何在 Flutter 项目中使用 Dart 语言?
127 58
|
4天前
|
Dart
flutter dart mixin 姿势
flutter dart mixin 姿势
|
19天前
|
Dart 开发者 Windows
flutter:dart的学习
本文介绍了Dart语言的下载方法及基本使用,包括在Windows系统上和VSCode中的安装步骤,并展示了如何运行Dart代码。此外,还详细说明了Dart的基础语法、构造函数、泛型以及库的使用方法。文中通过示例代码解释了闭包、运算符等概念,并介绍了Dart的新特性如非空断言操作符和延迟初始化变量。最后,提供了添加第三方库依赖的方法。
25 12
|
24天前
|
C#
SET访问器和GET访问器
SET访问器和GET访问器
25 2
|
18天前
|
开发者
flutter:总结所有需要用到的方法与实战 (十六)
本文介绍了Flutter中路由和顶部导航的使用方法,包括简单路由、命名路由、返回及返回根路由的实现。同时,详细讲解了顶部导航的定义与属性设置,并通过实战案例展示了复杂布局、新闻列表和页面制作的思路。最后,还提供了父类向子类传递参数的方法以及如何添加依赖库。
|
3月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
3月前
|
Java Linux 开发者
|
3月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
|
3月前
|
Dart 开发工具
消除Flutter doctor的警告Warning: `dart` on your path resolves to xxx/bin/dart
消除Flutter doctor的警告Warning: `dart` on your path resolves to xxx/bin/dart
58 0
|
19天前
|
存储 JavaScript 前端开发
Set、Map、WeakSet 和 WeakMap 的区别
在 JavaScript 中,Set 和 Map 用于存储唯一值和键值对,支持多种操作方法,如添加、删除和检查元素。WeakSet 和 WeakMap 则存储弱引用的对象,有助于防止内存泄漏,适合特定场景使用。