C#和JAVA GET,SET对比

使用GET,SET方法的好处:
隐藏内部成员,但又想外部能够以某
种正确的方式来访问和修改内部成员的属性,
因此通过构造GET,SET访问器来控制访问成员,确保数据的一致,完整和正确性。


下面分析JAVA和C#写法


JAVA写法:通过定义GET,SET方法来访问内部属性,达到控制访问的目的。
命名规范:所有成员变量,最好以小写字母开头。GET,SET访问器(方法)的对应属性值则以大写字母开头。
复制代码
public class Dog { private int age; private String name; public int getAge()
{ this.age;
} // SET方法 public void setAge(int age) { // 这世界有超过30岁的狗吗? if (age <= 30) { this.age = age;
}
} public String getName() { // 后缀标识这是一只狗 return this.name + "(Dog)";
} public void setName(String name) { this.name = name;
} public static void main(String[] args) {
Dog dog = new Dog(); // 输入错误的年龄 dog.setAge(40);
dog.setName("honey");
System.out.println(dog.getName() + ",年龄:" + dog.getAge()); // 输入正确的信息 dog.setAge(4);
dog.setName("baby");
System.out.println(dog.getName() + ",年龄:" + dog.getAge());
}
}
复制代码
C#写法
C#单独定义了GET,SET访问器的书写方法,通过暴露的成员“属性”,来达到控制访问。
命名规范:成员变量,以下划线作为前缀,可省去this,避免覆盖,对于属性则以大写字母开头。
复制代码
public class Dog
{ private int _age; private String _name; public int Age
{ get { return _age;
} set { if (value <= 30)
{
_age = value;
}
}
} public String Name
{ get { return _name + "(Dog)";
} set {
_name = value;
}
} static void Main(String[] args)
{
Dog dog = new Dog(); //输入错误的年龄 dog.Age = 40;
dog.Name = "honey";
Console.WriteLine(dog.Name + ",年龄:" + dog.Age + "\n"); //输入正确的信息 dog.Age = 4;


dog.Name = "baby";
Console.WriteLine(dog.Name + ",年龄:" + dog.Age + "\n");
Console.ReadLine();
}


}
复制代码


C#的写法:相比JAVA,更加简洁明了,通过暴露属性方法,而不是通过调用方法的方式来访问内部属性,不仅更加直观,通过也简化了繁琐的代码书写。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值