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

举报
韩曙亮 发表于 2022/01/10 23:50:26 2022/01/10
【摘要】 文章目录 一、 get 和 set 方法二、 静态方法三、 相关资源 一、 get 和 set 方法 get 方法 : 置私有字段的 get 方法 , 让外界可以访...





一、 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";
  }
}

  
 




三、 相关资源



参考资料 :


博客源码下载 :

文章来源: hanshuliang.blog.csdn.net,作者:韩曙亮,版权归原作者所有,如需转载,请联系作者。

原文链接:hanshuliang.blog.csdn.net/article/details/113883540

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。