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 阅读数:12 评论数: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