Error message here!

Hide Error message here!

忘记密码?

Error message here!

请输入正确邮箱

Hide Error message here!

密码丢失?请输入您的电子邮件地址。您将收到一个重设密码链接。

Error message here!

返回登录

Close

【02】对象的Getter and Setter

the_path_of_grace 2019-12-02 22:01:00 阅读数:55 评论数:0 点赞数:0 收藏数:0

java和C#非常相似,它们大部分的语法是一样的,但尽管如此,也有一些地方是不同的。

为了更好地学习java或C#,有必要分清它们两者到底在哪里不同。

我们这次要来探讨对象的Getter and Setter

 

java中的实现:

 package HelloWorld;

public class HelloWorld {
 public static void main(String[] args) {
 Student stu=new Student();
 stu.set_name("李四");
  System.out.println(stu.get_name());
  }

}
 class Student{

private String _name;
 public String get_name() {
 return _name;
  }

public void set_name(String _name) {
 this._name = _name;
  }

}

 

C#中的实现(在C#中set和get方法叫做属性):

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

namespace ConsoleApp1
 {
 class Program
  {
 static void Main(string[] args)
  {
 Student stu = new Student();
 stu.Name = "李四";
  Console.WriteLine(stu.Name);
  Console.ReadKey();
  }
  }

class Student
  {
 private string _name;
 private int age;

public string Name
  {
 get
 {
 return _name;
  }

set
 {
 _name = value;
  }
  }
  }
 }

 

C#还可使用匿名属性(如果的单纯的读写,c#可以直接写成匿名属性),等价于:

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;

namespace ConsoleApp1
 {
 class Program
  {
 static void Main(string[] args)
  {
 Student stu = new Student();
 stu.Name = "李四";
  Console.WriteLine(stu.Name);
  Console.ReadKey();
  }
  }

class Student
  {
 //private string _name;
public string Name
  {
 get;set;
  }
  }
 }

 

分析和总结:

1、在属性的过滤上,不管是java还是c#都可以在set和get的方法里面对操作进行过滤。

2、如果只是单纯做读和写,C#的匿名属性比java的语法更为简洁。

 

谢谢观看!

版权声明
本文为[the_path_of_grace]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/edcoder/p/11973579.html