zoukankan      html  css  js  c++  java
  • C#-之属性(1)

    1. 属性定义方式与字段类似,但还包括Set和Get两个访问器,其格式如下:

          public/private <type> Name

           {

               get

                  {

                      return variable;
                  }    

               set

                  {

                     赋值语句;
                  }   

           }

        属性可以使用virtual ,override,abstract关键字,访问器也可以由自己的访问属性;

    2. 私有字段,一般使用属性来对其赋值;属性是访问对象状态的首选,因为他们禁止外部代码访问对象内部数据存储机制的实现,一般以标准方式定义属性,即通过一个公共属性来直接访问一个私有字段。

       private int myInt;

       public int MyInt

         {

              get

                {

                   return myInt;

                }

             set

                {

                 myInt = value;

                }

        }

        属性成员定义,可以使用VS 单击字段选择重构;

    3. 自动属性

          public int MyInt {get; set; }

    这个自动属性没有理解!!!

    4.一般属性与自动属性区别

    (1)自动实现的属性必须同时声明 get和 set 访问器。创建 readonly自动实现属性时,需要将set访问器设置为private 。
    (2)自动实现的属性上可以使用特性,不能用在支持后备字段上。如果属性的后备字段上使用特性,则应该只创建常规属性。
    (3)自动实现属性get,和set中不能包含特殊的逻辑处理。与字段类似,但不同于字段。与字段不同,属性不作为变量来分类,不能将属性作为 ref参数或  out参数传递。

    5. https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/properties,有详细介绍。

  • 相关阅读:
    问题S
    为什么说程序员的前三年不要太看重工资水平
    Oracle查看锁表与解锁方法
    .net 动态代理的泛型方法支持问题
    探索Windows Azure 监控和自动伸缩系列3
    探索Windows Azure 监控和自动伸缩系列2
    探索Windows Azure 监控和自动伸缩系列1
    如何找到w3wp与w3svc的对应关系
    妙用perfmon Alert抓dump
    .net RPC框架选型(一)
  • 原文地址:https://www.cnblogs.com/xingyuanzier/p/10268029.html
Copyright © 2011-2022 走看看