【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 ( 本篇博客的源码快照 , 可以找到本博客的源码 )


目录
相关文章
|
11月前
|
存储 JavaScript 前端开发
Set中的add()方法和数组的push()方法有什么区别?
Set中的add()方法和数组的push()方法有什么区别?
558 122
|
11月前
|
存储 安全 JavaScript
如何使用Set的delete()方法删除元素?
如何使用Set的delete()方法删除元素?
760 122
|
API Android开发 iOS开发
除了permission_handler插件,还有哪些方法可以实现Flutter动态申请权限?
除了permission_handler插件,还有哪些方法可以实现Flutter动态申请权限?
806 167
|
11月前
|
存储 安全 JavaScript
如何使用Set的add()方法添加元素?
如何使用Set的add()方法添加元素?
850 58
|
10月前
|
JavaScript 前端开发
如何使用Set的delete()方法删除Set中的所有元素?
如何使用Set的delete()方法删除Set中的所有元素?
441 1
|
存储 缓存 NoSQL
Redis中的常用命令-get&set&keys&exists&expire&ttl&type的详细解析
总的来说,这些Redis命令提供了处理存储在内存中的键值对的便捷方式。通过理解和运用它们,你可以更有效地在Redis中操作数据,使其更好地服务于你的应用。
595 17
|
Java Maven Spring
【SpringBug】lombok插件失效,但是没有报错信息,@Data不能生成get和set方法
解决写了@Data注解,但是在测试文件中生成的反编译target文件Us二Info中没有get和set方法
1274 16
|
开发框架 前端开发 定位技术
Flutter框架中的插件市场及开源资源的利用方法。内容涵盖插件市场的扩展功能、时间节省与质量保证
本文深入探讨了Flutter框架中的插件市场及开源资源的利用方法。内容涵盖插件市场的扩展功能、时间节省与质量保证,常见插件市场的介绍,选择合适插件的策略,以及开源资源的利用价值与注意事项。通过案例分析和对社区影响的讨论,展示了这些资源如何促进开发效率和技术进步,并展望了未来的发展趋势。
368 11
|
开发框架 Dart 前端开发
Flutter 是谷歌推出的一款高效跨平台移动应用开发框架,使用 Dart 语言,具备快速开发、跨平台支持、高性能、热重载及美观界面等特点。
Flutter 是谷歌推出的一款高效跨平台移动应用开发框架,使用 Dart 语言,具备快速开发、跨平台支持、高性能、热重载及美观界面等特点。本文从 Flutter 简介、特点、开发环境搭建、应用架构、组件详解、路由管理、状态管理、与原生代码交互、性能优化、应用发布与部署及未来趋势等方面,全面解析 Flutter 技术,助你掌握这一前沿开发工具。
1307 8
|
缓存 前端开发 数据安全/隐私保护
Flutter 框架提供了丰富的机制和方法来优化键盘处理和输入框体验
在移动应用开发中,Flutter 框架提供了丰富的机制和方法来优化键盘处理和输入框体验。本文深入探讨了键盘的显示与隐藏、输入框的焦点管理、键盘类型的适配、输入框高度自适应、键盘遮挡问题处理及性能优化等关键技术,结合实例分析,旨在帮助开发者提升应用的用户体验。
708 6