对比swift、c#、java的getter和setter方法

举报
福州司马懿 发表于 2021/11/19 07:02:26 2021/11/19
【摘要】 1、swift的setter和getter方法 class MyClass : ParentClass {var value: Double { get { return value } set { value = newValue / 3.0}}} setter 中,新值...

1、swift的setter和getter方法


  
  1. class MyClass : ParentClass {
  2. var value: Double {
  3. get {
  4. return value
  5. }
  6. set {
  7. value = newValue / 3.0
  8. }
  9. }
  10. }

setter 中,新值有一个隐式的名称是newValue这个名称是固定的,跟你的变量名无关。


2、对比C#——这个是3.5的新特性:自动属性!!


  
  1. class MyClass1ParentClass{
  2. public int value{get;set;}
  3. }
  4. //或
  5. class MyClass2ParentClass{
  6. private string _xxx;
  7. public string Property {
  8. get { return _xxx; }
  9. set { this._xxx = value; }
  10. }
  11. }


3、对比java——java就不能这么投机取巧了,只能老老实实的写getter和setter函数了。


  
  1. class MyClass : ParentClass {
  2. private string _xxx;
  3. public string getXXX() {
  4. return _xxx;
  5. }
  6. public void setXXX(string xxx) {
  7. this._xxx = xxx;
  8. }
  9. }


文章来源: blog.csdn.net,作者:福州-司马懿,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/chy555chy/article/details/51375664

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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