首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【Flutter】Dart 面向对象 ( get 方法 | set 方法 | 静态方法 )

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

作者头像
韩曙亮
发布2023-03-28 21:16:08
发布2023-03-28 21:16:08
3.3K0
举报

一、 get 和 set 方法


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

  • 格式 : 返回值类型 get 方法名 { 方法体 }
  • 代码示例 :
代码语言:javascript
复制
  // get 方法 : 设置私有字段 achievement 的 get 方法,
  //            让外界可以访问 Person 对象的 _achievement 私有成员
  int get achievement => _achievement;

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

  • 格式 : set 方法名 ( 参数 ) { 方法体 }
  • 代码示例 :
代码语言:javascript
复制
  // set 方法 : 设置私有字段 achievement 的 set 方法,
  //            让外界可以设置 Person 对象的 _achievement 私有成员值
  set achievement(int achievement){
    _achievement = achievement;
  }

代码示例 :

代码语言:javascript
复制
// 定义 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 关键字标识的方法是静态方法 ;

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

静态方法示例 :

代码语言:javascript
复制
// 定义 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";
  }
}

三、 相关资源


参考资料 :

博客源码下载 :

  • GitHub 地址 : https://github.com/han1202012/flutter_app_hello ( 随博客进度一直更新 , 有可能没有本博客的源码 )
  • 博客源码快照 : https://download.csdn.net/download/han1202012/15382731 ( 本篇博客的源码快照 , 可以找到本博客的源码 )
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、 get 和 set 方法
  • 二、 静态方法
  • 三、 相关资源
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档